com.ms.wfc.io
提供与数据流一起工作的类。
类
BufferedStream
实现一个缓冲数据流。
CodePage
定义一些常量,指明系统所支持代码页的标识符。
DataStream
提供IDataStream界面的一个基本实现。
EOFException
表示了一个EOF异常消息。
File
实现对文件的访问。
FileAccess
定义指明文件访问的常量。
FileAttribute
定义指明文件属性的常量。
FileEnumerator
搜索文件系统,寻找与特定格式匹配的文件。
FileMode
定义指明文明模式的常量。
FileShare
定义指明文件共享的常量。
IOException
表示了输入/输出(I/O)异常。
MemoryStream
实现了一个内存中的数据流。
Reader
表示了一个可以读取顺序字符流的读者。
StringReader
实现了从字符串中读取信息的读者。
StringWriter
实现了一个作者,可以向字符串缓冲区写入内容,并允许结果字符串序列表示为一个字符串。
Text
提供了字段表示了过程的标准输入、输出和错误文件。
TextReader
实现了一个读者,可以从IByteStream对象或命名文件中读取序列字符流的内容。
TextWriter
实现了一个作者,可以向IByteStream对象或命名文件中写入序列字符流的内容。
WinIOException
创建一个Windows 输入/输出(I/O)错误异常类。
Writer
代表一个作者,可以写序列字符流。
界面
IByteStream代表以字节方式进行读写的数据流。
IdataStream
代表可以多种格式进行读写的数据流。
Ireader
定义了一个界面,可以读取序列字符流。
Iwriter
定义了一个可以写入序列字符流的界面。
BufferedStream类
实现了一个缓冲数据流。
DataStream | +-- BufferedStream
package com.ms.wfc.io
public class BufferedStream
extends DataStream
说明
可以在IByteStream对象之前放置一个BufferedStream实例以便提供输入/输出的缓冲操作。当对数据流进行大量的读写操作时缓冲将会提高性能。数据流的特征是由类以及自定义的插入和抽取操作符所决定的。
构造器
BufferedStream. BufferedStream
创建一个缓冲数据流。
语法
public BufferedStream ( IByteStream stream )
public BufferedStream ( IByteStream stream, int bufferSize )
参数
stream
要操作的数据库。
BufferSize
缓冲区的长度,以字节表示。
方法
BufferedStream.close
关闭缓冲区。
语法
public void close ()
BufferedStream.flush
强制缓冲区中保留的事件写入文件。
语法
public void flush ()
BufferedStream.getLength
检取数据流的长度,以字节表示。
语法
public long getLength ()
返回值返回数据流的长度。
说明
缺省实现将产生IOException,但子类可以覆盖该方法来提供相应的功能。
BufferedStream.getPosition
检取数据流的位置。
语法
public long getPositon()
返回值
返回数据流当前的位置。
BufferedStream.getStream
检取当前缓冲数据流。
语法
public IByteStream getStream ()
返回值
返回当前缓冲数据流。BufferedStream.read从数据流中读取下一个字节。
语法
public int read ()
返回值
返回数据流中下一个字节的数据。
BufferedStream.readByte
从数据流中读取一个字节。
语法
public byte readByte ()
返回值
从数据流中返回一个字节的数据。
BufferedStream.readChar
从数据流中读取一个字符。
语法
public char readChar()
返回值
返回数据流中的一个字符。
BufferedStream.readCore
实现核心矩阵读取方法。
语法
protected int readCore ( Object array, int offset, int count )
参数
array
原子类型的矩阵。
Offset
缓冲区偏移量字节数。
Count
要读取的字节数。
返回值
从数据流中返回一个矩阵。
异常
如果数据流不支持读取操作,就产生IOException异常消息。
覆盖:DataStream.readCore
BufferedStream.readInt
从数据流中读取一个整数。
语法
public int readInt()
返回值
从数据流中返回一个整数。
BufferedStream.readShort
从数据流中返回一个short类型的值。
语法
public short readShort()
返回值
返回一个short类型的值。
BufferedStream.readStringCharsAnsi
从数据流中读取ANSI字符串。
语法
public String readStringCharsAnsi ( int length )
参数
length
缓冲区的长度,以字节数表示。
返回值
返回所读取的字符串。
BufferedStream.readStringNull
从数据流中读取以null结尾的单一码字符串。
语法
public String readStringNull ()
BufferedStream.readStringNullAnsi
从数据流中读取一个以null结尾的ANSI字符串。
语法
public String readStringNullAnsi()
返回值
返回所读取的字符串。
BufferedStream.setLength
数值数据流的长度。
语法
public void setLength ( long length )
参数
length
数据流的长度。
BufferedStream.setPosition
设置数据流的位置。
语法
public void setPosition ( long position )
参数
position
要设置的数据流位置。
BufferedStream.write
将一个字节的数据写入数据流。
语法
public void write ( inte value )
参数
value
要写入的数据。
BufferedStream.writeByte
将一个字节写入数据流。
语法
public void writeByte( byte value )
参数
value
要写入的数值。
BufferedStream.writeChar
将字符写入数据流。
语法
public void writeChar ( char value )
参数
value
要写入的数值。
BufferedStream.writeCore
实现核心矩阵写入方法。
语法
protected void writeCore ( Object array, int index, int count )
参数
array
原子类型的矩阵。
Index
缓冲区偏移量,以字节数来表示。
Count
要写入的字节数。
覆盖:DataStream.writeCore
BufferedStream.writeInt
将一个整数写入数据流。
语法
public void writeInt ( int value )参数value要写入的数据。BufferedStream.writeShort将一个short值写入数据流。
语法
public void writeShort ( short value )参数value要写入的数据。
CodePage类
定义一些常量,指明系统所支持代码页的标识符。
package com.ms.wfc.io
public class CodePage
字段
CodePage.ANSI
指明为ANSI代码页。
语法
public static final int ANSI;
CodePage.MAC
指明为Apple Macintosh操作系统代码页。
语法
public static final int MAC;
CodePage.OEM
指明为OEM代码页。
语法
public static final int OEM;
DataStream类
提供IDataStream界面的基本实现。
package com.ms.wfc.io
public class DataStream
implements IdataStream
说明
要创建一个IDataStream的实现,通常就从该类继承就可以了。
要支持读取操作,子类至少要实现read和readCore方法。要支持写入操作,子类至少要实现write和writeCore方法。要支持随机寻找,子类至少要实现getLength, setLength, getPosition和setPosition方法。最后,如果需要的话,就覆盖close和flush方法。
请参阅:BufferedStream, File, IByteStream, MemoryStream
构造器
DataStream.DataStream
创建一个DataStream对象。
语法
protected DataStream()
说明
该构造器是保护类型,防止对其进行实化操作。
方法
DataStream.canRead
确定数据流是否支持读取操作。
语法
public boolean canRead()
返回值
如果数据流支持读取操作,就返回true;否则,就返回false。
异常
如果数据流不支持读取操作或发生I/O错误,就产生IOException异常消息。
说明
该方法实现了IByteStream.canRead方法。缺省的方法总是返回true,但子类可以覆盖该方法以提供正确的功能。
请参阅:read
DataStream.canSeek
确定数据流是否支持寻址操作。
语法
public boolean canSeek ()
返回值
如果数据流支持寻址操作,就返回true;否则,就返回false。
异常
如果出现I/O错误,就产生IOException异常消息。
说明
该方法实现了IByteSteam.canSeek方法。这个缺省方法总是返回true,你可以在子类中覆盖该方法从而提供正确的功能。
请参阅:write
DataStream.canWrite
确定数据流是否支持写入操作。
语法
public boolean canWrite()
返回值
如果数据流支持写入操作就返回true。否则就返回false。
异常
如果出现I/O错误或数据流不支持写入操作就产生IOException异常消息。
说明
该方法实现了IByteStream.canWrite方法。该缺省方法总是返回true,但子类可以覆盖该方法以提供正确的功能。
请参阅:write
DataStream.close
关闭数据流。
语法
public void close()
说明
该方法实现了IByteStream.close方法。这个缺省的方法是空的,但子类可以覆盖该方法以提供正确的功能。
DataStream.flush
将该数据流缓冲数据处理完毕。
语法
public void flush()
说明
该方法实现了IByteStream.flush方法。缺省方法是空的,但子类可以覆盖它以提供正确的功能。
DataStream.fromComStream
从IStream对象中检取一个IDataStream对象。
语法
pubilc static IDataStream fromComStream ( IStream comStream )
参数
comStream
创建IDataStream对象的com. ms.com.IStream。返回值为指定的IStream对象返回一个IDataStream对象,或者如果comStream参数是null就返回null。
说明
如果有一个与COM兼容的IStream对象而需要一个IDataStream对象,就可以使用该方法创建一个适配器。
请参阅:getComStream, toComStream
DataStream.getComStream
从数据流中检取IStream。
语法
public IStream getComStream ()
返回值
返回该数据流与COM兼容的com.ms.com.IStream实现。该对象被缓存以便后续对getComStream的调用并返回结果。
请参阅:fromComStream, toComStream
DataStream.getLength
检取数据流的长度。
语法
public long getLength()
返回值
返回数据流的长度。
说明
该方法实现了IByteStream.getLength方法。这个缺省实现将产生IOException,你可以在子类中覆盖该方法以提供正确的功能。
DataStream.getPosition
检取数据流的位置。
语法
public long getPosition()
说明
该方法实现了IByteStream.getPosition方法。这个缺省实现将产生IOException,你可以在子类中覆盖该方法以提供正确的功能。
返回值
返回数据流当前的位置。
DataStream.read
从数据流中读取下一个字节。
语法
public int read()
public int read ( byte[] buffer, int index, int count )
参数
buffer
保存读入数据的矩阵。
index
矩阵起始位置的索引。
count要读取的字节数。
返回值
返回所读取的字节数。
说明
该方法实现了IByteStream.read方法。这个缺省实现将产生IOException,你可以在子类中覆盖该方法以提供正确的功能。第一个不带参数的方法将从数据流中读取下一个字节。第二个带参数的方法先验证参数是否有效,然后再调用readCore方法读取数据。DataStream.readBoolean从数据流中读取boolean值。
语法
public boolean readBoolean ()
返回值
如果字节非零就返回true;否则就返回false。
说明
该方法实现了IDataStream.readBoolean方法。该方法调用read方法读取字节。DataStream.readByte从数据流中读取一个字节。
语法
public byte readByte()
返回值
从数据流中返回一个字节。
说明
该方法实现了IDataStream.readByte方法。该方法调用read方法读取字节。
DataStream.readBytes
从数据流中读取字节块。
语法
public byte[] readBytes ( int count )
public void readBytes ( byte[] buffer, int index, int count )
参数
buffer
保存读入数据的矩阵。
index
矩阵中起始位置的索引。
count
要读取的字节数。
返回值
返回一个字节矩阵,包含了所读取的字节。
说明
该方法实现了IDataStream.readBytes方法。该方法调用read方法读取字节。
DataStream.readChar
从数据流中读取一个字符。
语法
public char readChar()
返回值
从数据流中读取一个字符。
说明
该方法实现了IDataStream.readChar方法。该方法调用read方法读取两个字节并将这两个字节组合为一个字符。
DataStream.readChars
从数据流中读取指定数量的字符。
语法
public char[] readChars( int count )
public void readChars( char[] buffer, int index , int count )
参数
buffer
保存读入数据的矩阵。
index
矩阵中起始位置的索引。
count
要读入的字节数。返回值返回一个字符矩阵,包含了所读取的数据。
说明
该方法实现了IDataStream.readChars方法。该方法先验证参数是否有效,然后调用readCore方法来读取数据。
DataStream.readCore
实现核心矩阵读取方法。
语法
protected int readCore ( Object buffer, int offset, int count )
参数
buffer
要读入原子类型矩阵。
offsetbuffer
偏移量字节数。
count
要读的buffer的字节数。
返回值
从数据流中返回一个数据矩阵。
异常
如果出现错误或者数据流不支持读取操作,就产生IOException异常消息。
说明
该方法被类中其他的矩阵读取方法所调用。该方法将count个字节的数据读到buffer中的offset位置处。buffer参数必须保证为byte[], char[],short[], int[], long[],float[]或double[]类型。该方法的起始实现将产生IOException异常消息,但你可以在子类中覆盖该方法以提供正确的功能。
DataStream.readDouble
从数据流中读取double值。
语法
public double readDouble ()
返回值
返回所读取的double值。
说明
该方法实现了IDataStream.readDouble方法。该方法调用readLong方法读取long值,然后再转换为double值。
DataStream.readDoubles
从数据流中读取指定数量的双字节数值放入到double矩阵中。
语法
public double[] readDoubles ( int count )
public void readDoubles ( double[] buffer, int index, int count )
参数
count
要读取的双字节数量。
buffer
保存读入数据的矩阵。
index
矩阵中起始位置的索引。
返回值
返回一个双字节矩阵,包含了所读取的字节。说明该方法实现了IDataStream.readDoubles方法。该方法先验证参数是否有效,然后调用readCore方法来读取数据。
DataStream.readFloat
从数据流中读取float值。
语法
public float readFloat ()
返回值
返回所读取的float值。
说明
该方法实现了IDataStream.readFloat方法。该方法调用readInt方法读取整数值,然后再转换为float值。
请参阅:write
FloatDataStream.reaFloats
从数据流中读取指定数量的float值放入到float矩阵中。
语法
public float [] readFloats ( int count )
public void readFloats ( Float[] buffer, int index, int count )
参数
buffer
保存读入数据的矩阵。
index
矩阵中起始位置的索引。
count
要读取浮点数的数量。
返回值
返回float矩阵,包含了所读取的字节。
说明
该方法实现了IDataStream.readFloats方法。该方法先验证参数是否有效,然后调用readCore方法来读取数据。
DataStream.readInt
从数据流中读取整数值。
语法
public int readInt ()
返回值
返回所读取的整数值。
说明
该方法实现了IDataStream.readInt方法。该方法调用read方法读取4个字节,然后再转换为整数值。DataStream.readInts从数据流中读取指定数量的整数值放入到整数矩阵中。
语法
public int[] readInts ( int count )public void readInts ( int[] buffer, int index, int count )
参数
buffer
保存读入数据的矩阵。
index
矩阵中起始位置的索引。
count
要读取的整数数量。返回值返回一个整数矩阵,包含了所读取的数据。
说明
该方法实现了IDataStream.readInts方法。该方法先验证参数是否有效,然后调用readCore方法来读取数据。DataStream.readLong从数据流中读取long值。
语法
public long readLong ()。
返回值
返回所读取的long值。
说明
该方法实现了IDataStream.readLong方法。该方法调用readInt方法两次读取两个整数,然后再转换为长整数值。
DataStream.readLongs
从数据流中读取指定数量的长整数放入到long矩阵中。
语法
public long[] readLongs ( int count )
public void readLongs ( long[] buffer, int index, int count )
参数
count
要读取的长整数的数量。
buffer
保存读入数据的矩阵。
index
矩阵中起始位置的索引。
返回值
返回一个长整数矩阵,包含了所读取的数据。
说明
该方法实现了IDataStream.readLongs方法。该方法先验证参数是否有效,然后调用readCore方法来读取数据。
DataStream.readShort
从数据流中读取short值。
语法
public short readShort ()。
返回值
返回所读取的short值。
说明
说明该方法实现了IDataStream.readShort方法。该方法调用read方法读取两个字节,然后再转换为短整数。
DataStream.readShorts
从数据流中读取指定数量的短整数放入到short矩阵中。
语法
public short[] readShorts ( int count )
public void readShorts ( short[] buffer, int index, int count )
参数
count
要读取的短整数的数量。
buffer
保存读入数据的矩阵。index矩阵中起始位置的索引。
返回值
返回一个短整数矩阵,包含了所读取的数据。
说明
该方法实现了IDataStream.readShorts方法。该方法先验证参数是否有效,然后调用readCore方法来读取数据。
DataStream.readString
从数据流中读取预定长度的单一码字符串。
语法
public String readString ()。
返回值
返回所读取的字符串值。
说明
说明该方法实现了IDataStream.readString方法。
DataStream.readStringChars
从数据流中读取单一码字符串。
语法
public String readStringChars ( int length )
参数
length
要读取的字符数。
返回值
返回所读取的字符串值。
说明
该方法实现了IDataStream.readStringChars方法。DataStream.readStringCharsAnsi从数据流中读取ANSI字符串。
语法
public String readStringCharsAnsi ( int length )
参数
length
缓冲区的字符长度。
返回值
返回所读取的字符串值。
说明
该方法实现了IDataStream.readStringCharsAnsi方法。
DataStream.readStringNull
从数据流中读取以null结尾的单一码字符串。
语法
public String readStringNull ()。
返回值
返回所读取的字符串值。
说明
该方法实现了IDataStream.readStringNull方法。
DataStream.readStringNullAnsi
从数据流中读取以null结尾的ANSI字符串。
语法
public String readStringNullAnsi()。
返回值
返回所读取的字符串值。
说明
该方法实现了IDataStream.readStringNullAnsi方法。
DataStream.readToEnd
读取从当前位置开始直到数据流的末尾的数据。
语法
public byte[] readToEnd()。
返回值
返回一个字节矩阵,包含了所读取的数据。
说明
该方法实现了IDataStream.readToEnd方法。
DataStream.readUTF
使用预定长UTF-8格式从数据流中读取字符串。
语法
public String readUTF()。
返回值
返回一个字节矩阵,包含了所读取的数据。
说明
该方法实现了IDataStream.readUTF方法。
DataStream.setLength
数值数据流的长度。
语法
public void setLength(long length)
参数
length新的数据流长度。
DataStream.readUTF
使用预定长UTF-8格式从数据流中读取字符串。
语法
public String readUTF()。
返回值
返回一个字节矩阵,包含了所读取的数据。
说明
该方法实现了IDataStream.readUTF方法。
DataStream.setLength
数值数据流的长度。
语法
public void setLength(long length)
参数
length
新的数据流长度。
说明
该方法实现了IByteStream.setLength方法。这个缺省实现将产生IOException,你可以在子类中覆盖该方法以提供正确的功能。DataStream.setPosition数值数据流的位置。
语法
public void setPosition( long position )
参数
position数据流新的位置。
说明
该方法实现了IByteStream.setPosition方法。这个缺省实现将产生IOException,你可以在子类中覆盖该方法以提供正确的功能。
返回值
返回数据流当前的位置。
DataStream.toComStream
检取IDataStream对象的IStream对象。
语法
pubilc static IStream toComStream ( IDataStream dataStream )
参数
dataStream
创建IStream对象所需要的IDataStream对象。
返回值
为指定的IDataStream对象返回一个com.ms.com.IStream对象。
说明
如果有一个IDataStream对象而需要一个与COM兼容的IStream对象,就可以使用该方法创建一个适配器。如果指定的IDataStream对象是null,该方法将返回null。否则,就调用getComStream方法从IDataStream对象中创建一个IStream对象。
请参阅:fromComStream, getComStream
DataStream.write
将数据写入数据流。
语法
public void write( int value )
public void write( byte[] buffer, int index, int count )
参数
value
要写入的值。
buffer
包含要写入数据的矩阵。
index
缓冲区起始位置的索引。
count
要写入的字节数。
说明
该方法实现了IByteStream.write方法。第一个方法将向数据流中写入下一个字节。第二个方法先验证参数是否有效,然后再调用writeCore方法写入数据。
DataStream.writeBoolean
向数据流中写入boolean值。
语法
public void writeBoolean (boolean value)
参数
value
要写入的值。
说明
该方法实现了IDataStream.writeBoolean方法。该方法调用write方法向数据流中写入一个字节,false就写入0,true就写入1。
DataStream.writeByte
向数据流中写入一个字节。
语法
public void writeByte(byte value)
参数
value要写入的值。
说明
该方法实现了IDataStream.writeByte方法。该方法调用write方法向数据流中写入字节。DataStream.writeBytes向数据流中写入一字节块。
语法
public void writeBytes ( byte[] buffer )
参数
buffer
要写入的缓冲区块。
说明
该方法实现了IDataStream.writeBytes方法。该方法调用write方法写入字节。
DataStream.writeChar
向数据流中写入一个字符。
语法
public void writeChar( char value )
参数
value要写入的值。
说明
该方法实现了IDataStream.writeChar方法。该方法调用write方法将两个字节写入数据流中。DataStream.writeChars将指定的字符矩阵内容写入数据流中。
语法
public void writeChars(char[] buffer )
public void writeChars( char[] buffer, int index , int count )
参数
buffer
包含要写入数据的矩阵。
index
矩阵中起始位置的索引。
count
要写入的字节数。
说明
该方法实现了IDataStream.writeChars方法。该方法先验证参数是否有效,然后调用writeCore方法来写入数据。
DataStream.writeCore
实现核心矩阵写入方法。
语法
protected void writeCore ( Object buffer, int offset, int count )
参数
buffer
要写入的原子类型矩阵。
offsetbuffer
偏移量字节数。
count
要写入buffer的字节数。
异常
如果出现错误或者数据流不支持写入操作,就产生IOException异常消息。
说明
该方法被类中其他的矩阵写入方法所调用。该方法将count个字节的数据写入buffer中的offset位置处。buffer参数必须保证为byte[], char[],short[], int[], long[],float[]或double[]类型。该方法的起始实现将产生IOException异常消息,但你可以在子类中覆盖该方法以提供正确的功能。
DataStream.writeDouble
向数据流中写入double值。
语法
public void readDouble (double value )
参数
value要写入的double值。
说明
该方法实现了IDataStream.writeDouble方法。该方法先将double值转换为长整数值,然后调用writeLong方法将数据写入数据流中。
DataStream.writeDoubles
将指定的double矩阵内容写入数据流中。
语法
public void writeDoubles ( double[] buffer)
public void writeDoubles ( double[] buffer, int index, int count )
参数
buffer要写入的原子类型矩阵。indexbuffer偏移量字节数。count要写入的双字节数量。
说明
该方法实现了IDataStream.writeDoubles方法。该方法先验证
参数
是否有效,然后调用writeCore方法来写入数据。
DataStream.writeFloat
向数据流中写入float值。
语法public void writeFloat ( float value )
参数
value要写入的值。
说明
该方法实现了IDataStream.writeFloat方法。该方法将float值转换为整数值,然后调用writeInt方法将数值写入数据流中。
DataStream.writeFloats
将指定float矩阵的内容写入数据流中。
语法
public void writeFloats ( float[] buffer )
public void writeFloats (float[] buffer, int index, int count )
参数
buffer
要写入的原子类型矩阵。
indexbuffer
偏移量字节数。
count
要写入的浮点数数量。
说明
该方法实现了IDataStream.writeFloats方法。第一个方法调用writeFloats方法写入数据。第二个方法先验证参数是否有效,然后调用writeCore方法来写入数据。
DataStream.writeInt
向数据流中写入整数值。
语法
public void writeInt ( int value )
参数
value要写入的数值。
说明
该方法实现了IDataStream.writeInt方法。该方法调用write方法写入4个字节。
DataStream.writeInts
将指定整数矩阵的内容写入数据流中。
语法
public void writeInts ( int[] buffer)
public void writeInts ( int[] buffer, int index, int count )
参数
buffer
要写入的原子类型矩阵。
indexbuffer
偏移量字节数。
count
要写入的整数数量。
说明
该方法实现了IDataStream.writeInts方法。第一个方法调用writeInts方法写入数据。第二个方法先验证参数是否有效,然后调用writeCore方法来写入数据。
DataStream.writeLong
向数据流中写入long值。
语法
public void writeLong ( long value )
参数
value要写入的值。
说明
说明该方法实现了IDataStream.writeLong方法。该方法调用readInt方法两次将long值写入数据流中。
DataStream.writeLongs
将指定长整数矩阵的内容写入数据流中。
语法
public void writeLongs ( long[] buffer )
public void writeLongs ( long[] buffer, int index, int count )
参数
buffer
要写入的原子类型矩阵。
indexbuffer
偏移量字节数。
count
要写入的长整数的数量。
说明
该方法实现了IDataStream.writeLongs方法。第一个方法调用writeLongs方法写入数据。第一个方法先验证参数是否有效,然后调用writeCore方法来写入数据。DataStream.writeShort向数据流中写入short值。
语法
public void writeShort ( short value )
参数
value要写入的值。
说明
该方法实现了IDataStream.writeShort方法。该方法调用write方法两次将两个字节写入数据流。
DataStream.writeShorts
将指定短整数矩阵的内容写入数据流中。
语法
public void writeShorts ( short[] buffer )
public void writeShorts ( short[] buffer, int index, int count )
参数
buffer要写入的原子类型矩阵。indexbuffer偏移量字节数。count要写入的短整数的数量。
说明
该方法实现了IDataStream.writeShorts方法。第一个方法调用writeShorts方法写入数据,第二个方法先验证参数是否有效,然后调用writeCore方法来写入数据。
DataStream.writeString
向数据流中写入预定长度的单一码字符串。
语法
public void writeString ( String value )
参数
value要写入的字符串。
说明
说明该方法实现了IDataStream.writeString方法。
DataStream.writeStringChars
向数据流中写入单一码字符串。
语法
public void writeStringChars ( String value )
参数
value要写入的字符串。
说明
该方法实现了IDataStream.writeStringChars方法。
DataStream.writeStringCharsAnsi
向数据流中写入ANSI字符串。
语法
public void writeStringCharsAnsi ( String value )
参数
value要写入的字符串。
说明
该方法实现了IDataStream.writeStringCharsAnsi方法。
DataStream.writeStringNull
向数据流中写入以null结尾的单一码字符串。
语法
public void writeStringNull ( String value )
参数
value要写入的字符串。
说明
该方法实现了IDataStream.writeStringNull方法。
DataStream.writeStringNullAnsi
向数据流中写入以null结尾的ANSI字符串。
语法
public void writeStringNullAnsi( String value )
参数
value要写入的字符串。
说明
该方法实现了IDataStream.writeStringNullAnsi方法。DataStream.writeUTF使用预定长UTF-8格式向数据流中写入字符串。
语法
public void writeUTF( String value )
参数
value
要写入的字符串。
说明
该方法实现了IDataStream.writeUTF方法。
EOFException类
表示EOF(End-of-File)异常。
IOException | +-- EOFException
package com.ms.wfc.io
public class EOFException
extends IOException
说明
当数据还没有完全读完就到了数据流的末尾时,IDataStream实现的read方法就产生该异常消息。
构造器
EOFException.EOFException
创建一个EOFException对象。
语法
public EOFException()public EOFException( String s )
参数
s
当产生异常时要显示的文本信息。如果没有传递文本内容,就显示缺省的消息。
File类
实现对文件的访问。
DataStream | +-- File
package com.ms.wfc.io
public class File
extends DataStream
说明
提供文件的IDataStream界面,也提供了文件目录和面向路径的函数和方法。
可以使用类中的构造器创建一个File实例。或者使用create, open,openRead, openStandardError, openStandardInput或openStandardOutput静态方法。
有关文件所支持的输入/输出方法的完整列表,请参阅IByteStream和IDataStream界面。
File实现了对底层文件的直接访问,而不用缓冲区。如果你要进行大量的读写操作,可以在File对象前面放置一个BufferedStream对象来提高性能。
在对文件进行操作的过程中,如果操作系统产生错误,就使用WinIOException类汇报,提供了底层操作系统错误代码。
构造器
File. File
给定新的或现有的文件,创建一个File对象。
语法
public File ( String path, int mode, int access , int share )
pubic File ( int handle )
pubilc File ( int handle , boolean owned )
参数
path
创建或打开文件的路径。
mode
打开文件的方法。可以是FileMode枚举类中的常量。
access
对文件的访问。可以是FileAccess枚举类中的常量。
share
文件打开时所支持的文件共享访问方式。可以是FileShare枚举类的常量。
handle
现有文件句柄。
owned
指明File对象是否拥有句柄。
异常
如果产生错误就产生WinIOException异常消息。
说明
owned参数指明File对象是否拥有指定的句柄。当调用close方法或在垃圾回收过程中释放File对象时,文件没有拥有的句柄是不会自动关闭的。
所指明的handler参数是由外部管理的,当调用close方法或在垃圾回收过程中释放File对象时,文件没有拥有的句柄是不会自动关闭的。
根据指定的access, mode和share参数创建或打开目标文件。该文件一直是打开的,除非调用了close方法或者在垃圾回收过程中释放File对象时。在调用了close方法之后,对该文件的任何操作都将导致产生异常。
请参阅:close, create, open, openRead, openStandardError,openStandardInput, openStandardOutput
方法
File.ChangeExtension
改变文件路径的扩展名。
语法
final static String changeExtension ( String path, String extension )
参数
path
要改变文件扩展名的路径。
extension
新的文件扩展名(前面有一个逗号)或者。
null
将删除扩展名。
返回值
返回新文件扩展名的路径。
说明
该方法返回与path参数相同的根目录、目录和基本名部分的文件路径,但文件扩展名改变为指定的扩展名。如果path参数是null,该函数就返回null。如果path参数不包含文件扩展名,新的扩展名就追加到路径的后面。如果extension参数是null,将删除path参数中的现有扩展名。
请参阅:getExtension, hasExtension
File.close
关闭该文件。
语法
public void close ()
说明
除非从现有的文件句柄创建了File对象,否则,底层文件句柄要使用Windows API函数CloseHandle来关闭。一旦关闭了句柄,再对文件进行操作就将产生错误。将导致产生IOException。要重新打开一个文件,就创建一个新的File对象。
覆盖:DataStream.close
请参阅:IByteStream.closeFile.combine将两个文件路径组合起来。
语法
public static String combine ( String path1, String path2)
参数
path1
第一个路径。
path2
第二个路径。
返回值
返回组合的路径。
说明
如果path2不包括根目录(例如,path1不是以反斜线或驱动器符开头),结果就是两个路径连接起来,如果需要的话之间就加上反斜线符。如果path2包括根目录,结果就是path2。如果path1或path2是null,结果就是非空字符串。如果path1和path2都是null,结果就是null。
File.copy
将现有文件拷贝到新文件中。
语法
public static void copy ( String sourceFileName, StringdestFileName )
参数
sourceFileName
要拷贝的文件名字。
destFileName
目标文件的名字。
异常
如果产生错误或目标文件已经存在,就产生WinIOException异常消息。
说明
使用copyOver方法将允许覆盖已经有的文件。
File.copyOver
将现有的文件拷贝到新的或现有的文件中。
语法
public static void copyOver ( String sourceFileName, StringdestFileName )
参数
sourceFileName
要拷贝的文件名。
destFileName
目标文件名。
异常
如果出现错误,就产生WinIOException异常消息。
说明
与copy方法不同的是,如果目标文件存在,该方法不会产生异常。
File.create
创建一个新文件。
语法
public static File create( String path )
参数
path
要创建的文件名。
返回值
返回新文件的File对象。异常如果出现错误,就产生WinIOException异常消息。
说明
如果指定的文件名已经存在,文件内容就截断为0。所返回的File对象也包含对新文件的读取操作。
请参阅:close
File.createDirectories
创建所指定路径下的所有目录。
语法
pubilc static void createDirectories ( String path )
参数
path要创建的目录路径。异常如果出现错误,就产生WinIOException异常消息。
说明
与createDirectory方法不同的是,该方法将根据需要创建多个目录以确保所指定的路径是有效的。如果某些或全部的路径已经存在也不是错误。path参数指定的是目录路径,而不是文件路径。要确保文件路径中的所有目录都已经创建,可以使用构造器File.createDirectories( File.getDirectory(filePath))。
File.createDirectory
创建一个新的目录。
语法
pubilc static void createDirectory ( String path )
参数
path
要创建的目录路径。
异常
如果出现错误,就产生WinIOException异常消息。
说明
除了最后的部分,特定的路径必须是指向现有的目录。路径最后的部分指明要创建的新目录名。如果该文件或目录名已经存在,就出现错误。
请参阅:createDirectories, removeDirectory
File.delete
删除一个文件。
语法
public static void delete( String path )
参数
path
要删除的文件路径。
异常
如果出现错误,就产生WinIOException异常消息。
说明
路径所指定的文件被删除。如果指定的文件不存在,就产生错误。
File.exists
确定文件是否存在。
语法
public static boolean exists( String path )
参数
path
要测试文件的路径。
返回值
如果路径所指定的文件存在,就返回true;否则,就返回false。
File.finalize
整理File对象,确保调用了close方法。
语法
protected void finalize() throws Throwable
File.flush
清除文件的缓冲区,导致缓冲的数据都写入文件。
语法
public void flush()
异常
如果出现错误或者文件已经被关闭就产生WinIOException异常消息。
说明
该方法调用Windows API函数FlushFileBuffers。
覆盖:DataStream.flush
请参阅:com.ms.wfc.io.IByteStream.flush
File.getAttributes
检取指定文件或目录的属性。
语法
public static int getAttributes ( String path )
参数
path文件或目录的路径。
返回值
返回文件或目录的属性。
异常
如果出现错误,就产生WinIOException异常消息。
说明。
返回值
可以是下面标记的组合:ARCHIVE,COMPRESSED,DIRECTORY,HIDDEN,OFFLINE,READONLY,SYSTEM和TEMPORARY FileAttribute。
请参阅:setAttributes
File.getCurrentDirectory
检取当前的目录。
语法
public static String getCurrentDirectory()。
返回值
返回当前目录的决定路径。异常如果出现错误,就产生WinIOException异常消息。
请参阅:setCurrentDirectory
File.getDirectory
检取文件路径中的目录路径。
语法
public static String getDirectory ( String path )
参数
path
文件或目录的路径。
返回值
返回指定路径中的目录路径。如果指定的路径包含根目录,就返回null。
说明
该方法有效地删除了指定文件路径中最后的部分;例如,其返回文件路径中直到最后一个反斜线符的部分,但不包括最后的反斜线符。如果文件路径是null或文件路径包括根目录如反斜线,C:或\\server\share,就返回null。
请参阅:getExtension, getName, getRoot, isRooted
File.getExtension
检取指定路径的扩展名。
语法
public static String getExtension ( String path )
参数
path
文件或目录的路径。
返回值
返回指定路径的扩展名,如果指定的路径是null或者不包括扩展名,就返回null。
请参阅:changeExtension , getDirectory, getName, getRoot,hasExtension
File.getFiles
检取与指定搜索路径匹配的文件名。
语法
public static String[] getFiles ( String path )
参数
path搜索的路径。
返回值
返回与搜索路径匹配的文件名字符串矩阵。
File.getFullPath
将指定的路径扩展为全路径。
语法
public static String getFullPath ( String path )
参数
path
要扩展为全路径的路径。
返回值全路径名。
异常
如果出现错误,就产生WinIOException异常消息。
说明
最后的结果包括驱动器字符、冒号和根目录的相对路径。该方法并不验证结果是否有效以及其是否指向驱动器上的现有的文件或目录。
File.getHandle
检取与File对象关联的文件句柄。
语法
public int getHandle ()返回值返回该File对象的文件句柄。
说明
如果文件已经被关闭,就返回-1。
File.getLength
检取文件的字节数。
语法
public long getLength()
返回值
返回文件长度。
异常
如果不能确定文件的末尾或文件已经被关闭,就产生WinIOException异常消息。
覆盖:DataStream.getLength
请参阅:IByteStream.getLength, setLength
File.getLogicalDrives
检取特定的逻辑驱动器。
语法public static String[] getLogicalDrives()。
返回值
返回逻辑驱动器。
File.getName
检取指定路径的名字和扩展名。
语法
public static String getName ( String path )
参数
path文件或目录的路径。
返回值
返回指定路径的名字和扩展名。
说明
结果包含path参数中最后一个反斜线或冒号后面的路径字符。如果path参数不包括任何反斜线或冒号,则结果就是一个完整的路径。如果path参数是null,则结果字符串也是null。
请参阅:getDirectory, getExtension, getRoot
File.getPosition检取文件当前的位置。
语法
public long getPosition()。
返回值
返回文档的当前位置。
异常
如果出现I/O错误或文件不允许定位操作,就产生WinIOException异常消息。
覆盖:DataStream.getPosition
请参阅:IByteStream.getPosition, setPosition
File.getRoot
检取指定路径的根目录。
语法
public static String getRoot ( String path )
参数
path
要测试的路径。
返回值
如果路径中反斜线或冒号后面的字符中包括句号,就返回true;否则就返回false。
请参阅:changeExtension, getExtension
File.isDirectory
确定指定的路径是否指向一个目录。
语法
public static boolean isDirectory ( String path )
参数
path
要测试的路径。
返回值
如果路径指向一个目录,就返回true;否则,就返回false。
请参阅:exists, isFile
File.isFile确定所指定的路径是否指向一个文件。
语法
public static boolean isFile ( String path )
参数
path要测试的路径。
返回值
如果路径指向一个文件,就返回true;否则就返回false。
请参阅:exists, isDirectory
File.isRooted
确定指定的路径是否包含根目录。
语法
public static boolean isRooted ( String path )
参数
path要测试的路径。
返回值
如果路径中包含根目录,就返回true;否则,就返回false。
说明
如果路径中包含反斜线或驱动器符以及冒号,就认为其包含根目录。
请参阅:getRoot
File.lock
锁住文件中的一个区域。
语法
public void lock ( long position, long length )
参数
position
要锁住区域的开头部分。
length
要锁住的范围长度。
异常
如果出现错误或文件已经被关闭,就产生WinIOException异常消息。
说明
锁住文件的一个区域将使得加锁进程自己独享该区域的访问。在加锁进程创建子进程时,文件锁并不继承。锁住文件的一个区域将使得其他进程不能对该区域进行读写操作。锁住范围如果超出文件的长度,这不算错误。文件中的文件锁不能相互覆盖。
请参阅:unlock
File.open
打开现有的文件进行读写操作。
语法
public static File open (String path )
参数
path
要打开文件的路径。
返回值
返回该打开文件的File对象。异常如果出现错误,就产生WinIOException异常消息。
说明
该方法使用FileMode.OPEN, FileAccess.READWRITE和FileShare.NONE标记能很方便地创建新文件。
请参阅:openRead, close
File.openRead
打开现有文件只进行读操作。
语法
public static File openRead ( String path )
参数
path要打开文件的路径。
返回值
返回所打开文件的File对象。异常如果出现错误,就产生WinIOException异常消息。
说明
该方法使用FileMode.OPEN, FileAccess.READ和FileShare.READ标记能很方便地创建新文件。
请参阅:open, closeFile.openStandardError打开标准的错误文件。
语法
public static File openStandardError ()。
返回值
返回标准错误文件的File对象。
异常
如果出现错误,就产生WinIOException异常消息。
File.openStandardInput
打开标准的输入文件。
语法
public static File openStandardInput ()。
返回值
返回标准输入文件的File对象。
异常
如果出现错误,就产生WinIOException异常消息。
File.openStandardOutput
打开标准的输出文件。
语法
public static File openStandardOutput ()。
返回值
返回标准输出文件的File对象。
异常
如果出现错误,就产生WinIOException异常消息。
File.read
从文件中读取下一个字节。
语法
public int read ()。
返回值
从文件中返回下一个字节。
覆盖:DataStream.read
请参阅:IByteStream.read
File.readByte从文件中读取一个字节。
语法
public byte readByte ()。
返回值
从文件中返回一个字节。
覆盖:DataStream.readByte
请参阅:IDataStream.readByte
File.readChar
从文件中读取一个字符。
语法
public char readChar ()。
返回值
从文件中返回一个字符。
覆盖:DataStream.readChar
请参阅:IDataStream.readChar
File.readInt
从文件中读取一个整数。
语法
public int readInt ()。
返回值
从文件中返回一个整数。
覆盖:DataStream.readInt
请参阅:IDataStream.readInt
File.readLong从文件中读取一个长整数。
语法
public long readLong ()。
返回值
从文件中返回一个长整数。
覆盖:DataStream.readLong
请参阅:IDataStream.readLong
File.readShort
从文件中读取一个短整数。
语法
public short readShort ()。
返回值
从文件中返回一个短整数。
覆盖:DataStream.readShort
请参阅:IDataStream.readShort
File.removeDirectory
删除现有的空目录。
语法
public static void removeDirectory ( String path )
参数
path要删除的目录路径。
异常如果出现错误,就产生WinIOException异常消息。
说明
该路径必须指向一个空目录,而且调用该方法的进程必须对该目录有访问权限。
请参阅:createDirectory
File.rename将现有文件或目录重新命名。
语法
public static void rename ( String curPath, String newPath )
参数
curPath
要重新命名的文件或目录的路径。
newPath
文件或目录新路径。
异常
如果出现错误,就产生WinIOException异常消息。
说明
curPath参数必须指向一个现有的文件或目录。newPath参数指明新文件名或目录名。新的名字必须是不重复的(即不存在的)。新文件可以位于不同的文件系统或驱动器上。新目录则必须是位于同一驱动器上。
File.setAttributes设置文件的属性。
语法
public static void setAttributes ( String path, int attribute )
参数
path
要设置属性的文件路径。
attributes
文件的属性。
异常
如果出现错误,就产生WinIOException异常消息。
说明
path参数必须指向现有的文件。attributes参数必须是在FileAttributes类中定义的属性标记的组合,这些标记包括:ARCHIVE, HIDDEN,OFFLINE, READONLY, SYSTEM和TEMPORARY。
请参阅:getAttributes
File.setCurrentDirectory
设置当前的目录。
语法
public static void setCurrentDirectory ( String path )
参数
path
当前新目录的路径。
异常
如果出现错误,就产生WinIOException异常消息。
说明
path参数必须指明当前新目录的路径。该参数可以是相对路径也可以是全路径。不管哪种情况,都将计算出全路径并作为当前的路径保存起来。
请参阅:getCurrentDirectory
File.setLength
将文件的长度设置为指定的值。
语法
public void setLength ( long value )
参数
value文件新的长度。
异常
如果出现错误或者文件已经被关闭,就产生WinIOException异常消息。
说明
如果该值比当前文件的长度小,文件就被截短。如果比当前文件的长度长,文件就被扩展,新老长度之间的文件内容未定义。
请参阅:IByteStream.setLength, getLength
File.setPosition
将文件的当前位置设置为指定的值。
语法public void setPosition ( long value )
参数
value
文件新的位置。
异常
如果出现错误或者文件已经被关闭,就产生WinIOException异常消息。
说明
将文件当前位置设置得比文件本身还长并不算错。
请参阅:IByteStream.setPosition, getPosition
File.unlock
将文件中的区域解锁。
语法
public void unlock ( long position, long length )
参数
position
要解锁区域的开始部分。
length
要解锁区域的范围。
异常
如果出现错误或者文件已经被关闭,就产生WinIOException异常消息。
说明
对一个区域解锁使得其他进程就可以访问该区域了。要解锁的区域必须严格对应已有的加锁区域。例如,两个毗邻的文件区域不能单独加锁然后作为一个区域进行解锁。过程应该解锁到锁住的区域即可,被解锁的文件不应该是被关闭。
请参阅:lock
File.write将一个字节写入文件。
语法
public void write ( int value )
参数
value
将整数值写入文件中。
覆盖:DataStream.write
请参阅:IByteStream.write
File.writeByte
将一个字节写入文件。
语法
public void writeByte ( byte value )
参数
value
要写入文件的字节。
覆盖:DataStream.writeByte
请参阅:IDataStream.writeByte
File.writeChar
将一个字符写入文件。
语法
public void writeChar( char value )
参数
value
要写入文件的字符。
覆盖:DataStream.writeChar
请参阅:IDataStream.writeChar
File.writeInt将一个整数写入文件。
语法
public void writeInt( int value )
参数
value
要写入文件的整数。
覆盖:DataStream.writeInt
请参阅:IDataStream.writeInt
File.writeLong将一个长整数写入文件。
语法
public void writeLong ( long value )
参数
value
要写入文件的长整数。
覆盖:DataStream.writeLong
请参阅:IDataStream.writeLong
File.writeShort
将一个短整数写入文件。
语法
public void writeShort ( short value )
参数
value
要写入文件的短整数。
覆盖:DataStream.writeShort
请参阅:IDataStream.writeShortw
FileAccess类
为文件访问类型定义常量。
Enum | + -- FileAccess
package com.ms.wfc.io
public class FileAccess
extends Enum
字段
FileAccess.READ
指明对文件进行读操作。
语法
public static final int READ;
说明
从文件中读取数据,并移动文件指针。该标记与WRITE标记组合就
可以进行读写操作。
FileAccess.READWRITE
指明对文件进行读写操作。
语法
public static final int READWRITE;
说明
将数据写入文件并移动文件指针。也可以从文件中读取数据。
FileAccess.WRITE
指明对文件进行写操作。
语法
public static final int WRITE;
说明
将数据写入文件并移动文件指针。将该标记与READ标记组合就可以进行读写操作。
方法
FileAccess.valid
验证指定的值是否是该类中定义的有效值。
语法
public static boolean valid ( int value )
参数
value
要检查的值。
返回值
如果是有效值,就返回true;否则,就返回false。
FileAttribute类
为文件属性类型定义常量。
Enum | +-- FileAttribute
package com.ms.wfc.io
public class FileAttribute
extends Enum
字段
FileAttribute.ARCHIVE
指明文件是存档文件。
语法
public static final int ARCHIVE;
说明
应用程序使用该值来标记文件的备份或移动操作。
FileAttribute.COMPRESSED
指明文件或目录是压缩文件。
语法
public static final int COMPRESSED;
说明
对一个文件来说,这意味着文件中的数据都是压缩的。对一个目录来说,这意味着在该目录下新创建的文件和目录缺省地将被压缩。
FileAttribute.DIRECTORY
指明文件是一个目录。
语法
public static final int DIRECTORY;
FileAttribute.HIDDEN
指明文件是隐藏文件。
语法
public static final int HIDDEN;
说明
在普通的目录列表中不包含该文件。
FileAttribute.OFFLINE
指明文件中的数据现在不可用。
语法
public static final int OFFLINE;
说明
指明文件数据已经被物理地移入离线存储介质中。
FileAttribute.READONLY
指明文件是只读文件。
语法
public static final int READONLY;
说明
应用程序可以读取文件数据但不能向文件中写入数据或删除该文件。
FileAttribute.SYSTEM
指明文件是操作系统的一部分或被操作系统独自使用。
语法
public static final int SYSTEM;
FileAttribute.TEMPORARY
指明文件用于临时存储。
语法
public static final int TEMPORARY;
说明
只有是绝对需要的时候应用程序才对该文件进行写入操作。文件数据的大部分内容都保存在内存而没有写入硬盘,因为该文件将很快就被删除。
方法
FileAttribute.valid
确定所指定的值是否是该类中定义的常量之一。
语法
public static boolean valid ( int value )
参数
value
要检查的值。
返回值
如果该值有效,就返回true;否则,就返回false。
FileEnumerator类
搜索文件系统,寻找与指定格式匹配的文件。
package com.ms.wfc.io
public class FileEnumerator
说明
下面的例子演示了如何来查找并在指定的目录中输出所有的Java文件。
static void printJavaFiles ( String path ) { FileEnumerator e = new FileEnumerator ( File.combine ( path, "*.*") ) ; while ( e.hasMoreFiles () ) { String name = e.getName () ; if ( ( e.getAttributes() & File.DIRECTORY ) != 0 ) { if ( !name.equals (".") && !name.equals(".")) { printJavaFiles( File.combine( path, name )) ; } } else { String ext = File.getExtension( name ) ; if ( ext != null && ext.equalsIgnoreCase("java")) { system.out.println( File.combine( path, name )); } } e.getNextFile (); } }
构造器
FileEnumerator. FileEnumerator
创建一个FileEnumerator对象。
语法
pubilc FileEnumerator( String path )
参数
path
要枚举的目录路径和文件名。
异常
如果指定的路径无效,就产生WinIOException异常消息。
说明
path参数必须指向有效的目录路径和文件名。该文件名可以包含置换符(*和?)。在构造了文件枚举器之后,hasMoreFiles方法将指明是否至少有一个文件与指定的格式相匹配。
方法
FileEnumerator.close
关闭文件枚举器。
语法
public void close()
说明
系统资源将被释放,任何获得的枚举结果都将被扔弃。通常并不需要调用该
方法,因为在处理完最后一个文件时,getNextFile将自动关闭枚举器。
FileEnumerator.finalize
确保该文件枚举器调用了close方法。
语法
protected void finalize()
FileEnumerator.getAttributes
检取当前文件的文件属性。
语法
public int getAttributes ()
返回值
返回文件属性标记的组合,这些标记有:ARCHIVE, COMPRESSED,DIRECTORY, HIDDEN, OFFLINE, READONLY, SYSTEM和TEMPORARY。这些标记都在FileAttributes类中定义。
FileEnumerator.getCreationTime
检取当前文件的创建时间。
语法
public Time getCreationTime ()
返回值
返回当前文件创建时间的Time对象。如果文件系统包含的文件不支持时间信息,就返回null。
请参阅:getLastAccessTime, getLastWriteTime
FileEnumerator.getLastAccessTime
检取当前文件最后一次访问的时间。
语法
public Time getLastAccessTime()
返回值
返回代表上次访问时间的Time对象。如果文件系统包含的文件不支持时间信息,就返回null。
请参阅:getCreationTime, getLastWriteTime
FileEnumerator.getLastWriteTime
检取当前文件上次写入的时间。
语法
public Time getLastWriteTime ()
返回值
返回代表上次写入时间的Time对象。如果文件系统包含的文件不支持时间信息,就返回null。
请参阅:getCreationTime, getLastAccessTime
FileEnumerator.getName
检取当前文件的名字。
语法
public String getName ()
返回值
返回文件的名字。
FileEnumerator.getNextFile
寻找与文件枚举器类型匹配的文件。
语法
public void getNextFile()
说明
在调用该方法之后,可以使用hasMoreFiles方法来确定枚举器中是否还有更多的文件。
FileEnumerator.getSize
检取当前文件的字节数。
语法
public long getSize()
返回值
返回文件的大小。
FileEnumerator.hasMoreFiles
确定是否还有其他的文件等待处理。
语法
public boolean hasMoreFiles()
返回值
如果还有其他文件,就返回true;否则,就返回false。
请参阅:getNextFile
FileMode类
定义文件模式常量。
Enum | +-- FileMode
package com.ms.wfc.io
public class FileMode
extends Enum
字段
FileMode.CREATE
指明创建一个新文件;如果文件已经存在,就覆盖它。
语法
public static final int CREATE;
FileMode.CREATE_NEW
指明创建一个新文件;如果文件已经存在,就产生异常。
语法
public static final int CREATE_NEW;
FileMode.OPEN
指明要打开一个现有的文件;如果文件不存在,就产生异常。
语法
public static final int OPEN;
FileMode.OPEN_OR_CREATE
指明要打开现有文件;否则,就创建一个新文件。
语法
public static final int OPEN_OR_CREATE;
FileMode.TRUNCATE
指明打开现有的文件,并将其截短,使其文件长度为0。
语法
public static final int TRUNCATE;
说明
调用该方法的进程对文件至少具有写的权限。如果文件不存在,就产生异常。
方法
FileMode.valid
确定所指定的值是否是给类中定义的有效常量。
语法
public static boolean valid ( int value ) ;
参数
value
要检查的值。
返回值
如果该值有效,就返回true;否则,就返回false。
FileShare类
定义文件共享常量。
Enum | +-- FileShare
package com.ms.wfc.io
public class FileShare
extends Enum
字段
FileShare.NONE
指明文件不能被共享。
语法
public static final int NONE;
说明
任何对该文件的打开请求都将失败,直到文件被关闭。
FileShare.READ
允许以后对文件进行读取操作。
语法
public static final int READ;
说明
如果没有指明该标记,任何要打开文件的请求都将失败,直到文件被关闭。
FileShare.READWRITE
允许以后对文件进行读写操作。
语法
public static final int READWRITE;
说明
如果没有指明该标记,任何要读写文件的请求都将失败,直到文件被关闭。
FileShare.WRITE
允许以后对文件进行写操作。
语法
public static final int WRITE;
说明
如果没有指明该标记,任何要写文件的请求都将失败,直到文件被关闭。
方法
FileShare.valid
确定说指定的值是否是该类中定义的有效常量。
语法
public static boolean valid ( int value )
参数
value
要检查的值。
说明
如果该值有效,就返回true;否则,就返回false。
IByteStream界面
表示一个以字节方式进行读写数据的数据流。
package com.ms.wfc.io
public class IByteStream
方法
IByteStream.canRead
确定该数据流是否支持读操作。
语法
public boolean canRead ()
返回值
如果该数据流支持读取操作,就返回true;否则,就返回false。
异常
如果出现I/O错误或数据流不支持读取操作,就产生IOException异常。
说明
如果数据流不支持读取操作,则调用read方法总是产生异常。
请参阅:read
IByteStream.canSeek
确定该数据流是否支持定位操作。
语法
public boolean canSeek ()
返回值
如果该数据流支持定位操作,就返回true;否则,就返回false。
请参阅:write
IByteStream.canWrite
确定该数据流是否支持写操作。
语法
public boolean canWrite ()
返回值
如果该数据流支持写入操作,就返回true;否则,就返回false。
异常
如果出现I/O错误或数据流不支持写入操作,就产生IOException异常。
说明
如果数据流不支持写入操作,则调用write方法总是产生异常。
请参阅:write
IByteStream.close
关闭数据流,使用与该数据流关联的所有系统资源。
语法
public void close()
说明
在调用了close方法之后,任何对该数据流的操作都将产生异常。
IByteStream.flush
清除该数据流的缓冲区,导致任何缓冲的数据都写入底层设备。
语法
public void flush()
异常
如果在I/O操作时出现错误,就产生IOException异常。
IByteStream.getlength
检取数据流的字节数。
语法
public long getLength()
返回值
返回数据流的长度。
异常
如果I/O出现错误或者不能确定数据流的长度,就产生IOException异常。
请参阅:setLength
IByteStream.getPositon
检取数据流当前的指针位置。
语法
public long getPosition ()
返回值
返回数据流当前的指针位置。
异常
如果I/O出现错误或者数据流不支持定位操作,就产生IOException异常。
请参阅:setPosition
IByteStream.read
从数据流中读取指定数量的字节放入矩阵中指定位置处。
语法
public int read ( byte[] buffer, int index, int count )
参数
buffer
保存读入数据的字节矩阵。
index
缓冲区起始位置索引。
count
要读入的字节数。
返回值
返回读入缓冲区字节的总数。可能比指定的值小,因为数据流中当前没有那么多的数据,或者也可能是0,如果已经到了数据流末尾的话。
异常
如果I/O错误或者数据流不支持读取操作,就产生IOException异常。
说明
要检查实际读入的字节数。如果读取操作成功,则数据流指针当前的位置就向前移动所读出的字节数。
请参阅:write
IByteStream.setlength
将数据流长度设置为指定的值。
语法
public void setLength( long value )
参数
value数据流新的长度。
异常如果I/O出现错误或者数据流不支持改变大小,就产生IOException异常。
说明
如果指定的值比当前数据流的长度小,就截短数据流。如果比当前的数据流长度长,就扩展数据流。如果数据流被扩展,则新老长度之间的数据流内容未定义。
请参阅:getLength
IByteStream.setPositon
将数据流指针设置为指定的值。
语法
public void setPosition ( long value )
参数
value
数据流指针新的位置。
异常如果I/O出现错误或者数据流不支持定位操作,就产生IOException异常。
说明
有一些数据流允许将指针定位到超出自己的范围,另外的数据流则会产生异常。
请参阅:getPosition
IByteStream.write
从矩阵指定位置处将指定数量的字节数写入数据流中。
语法
public void write( byte[] buffer, int index, int count )
参数
buffer
保存写入数据的字节矩阵。
index
缓冲区起始位置索引。
count
要写入的字节数。
异常
如果I/O错误或者数据流不支持写入操作,就产生IOException异常。
说明
如果写入操作成功,则数据流指针当前的位置就向前移动所写入的字节数。
请参阅:read