public class FileDataSource extends Object implements DataSource
The FileDataSource class implements a simple DataSource object that encapsulates a file. It provides data typing services via a FileTypeMap object.
FileDataSource Typing Semantics
The FileDataSource class delegates data typing of files to an object subclassed from the FileTypeMap class. The setFileTypeMap
method can be used to explicitly set the FileTypeMap for an instance of FileDataSource. If no FileTypeMap is set, the FileDataSource will call the FileTypeMap's getDefaultFileTypeMap method to get the System's default FileTypeMap.
DataSource
, FileTypeMap
, MimetypesFileTypeMap
public FileDataSource(File file)
Creates a FileDataSource from a File object. Note: The file will not actually be opened until a method is called that requires the file to be opened.
file
- the filepublic FileDataSource(String name)
Creates a FileDataSource from the specified path name. Note: The file will not actually be opened until a method is called that requires the file to be opened.
name
- the system-dependent file name.public InputStream getInputStream() throws IOException
This method will return an InputStream representing the the data and will throw an IOException if it can not do so. This method will return a new instance of InputStream with each invocation.
getInputStream
in interface DataSource
IOException
public OutputStream getOutputStream() throws IOException
This method will return an OutputStream representing the the data and will throw an IOException if it can not do so. This method will return a new instance of OutputStream with each invocation.
getOutputStream
in interface DataSource
IOException
public String getContentType()
This method returns the MIME type of the data in the form of a string. This method uses the currently installed FileTypeMap. If there is no FileTypeMap explictly set, the FileDataSource will call the getDefaultFileTypeMap
method on FileTypeMap to acquire a default FileTypeMap. Note: By default, the FileTypeMap used will be a MimetypesFileTypeMap.
getContentType
in interface DataSource
FileTypeMap.getDefaultFileTypeMap()
public String getName()
Return the name of this object. The FileDataSource will return the file name of the object.
getName
in interface DataSource
DataSource
public File getFile()
Return the File object that corresponds to this FileDataSource.
public void setFileTypeMap(FileTypeMap map)
Set the FileTypeMap to use with this FileDataSource
map
- The FileTypeMap for this object.
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.