A. java中DataInputStream类有readInt()方法,怎么用
DataInputStream是输入流,DataInputStreamdis这样用x0dx0adis.readInt()//输入流中的读取下一个整数,并返回x0dx0a如果不是整数,则会抛出异常x0dx0a这时候用try...catch捕获对应的异常做处理就可以了
B. Java中DataInputStream的用法
1、DataOutputStream:数据输出流允许应用程序以适当方式将基本 Java 数据类型写入输出流中。然后应用程序可以使用数据输入流将数据读入。
2、例子:
/**
*必须先使用DataOutputStream写入数据,然后使用DataInputStream读取数据方可。
*
*@author徐越
*
*/
publicclassTestClass
{
publicstaticvoidmain(String[]args)throwsException
{
TestClasst=newTestClass();
t.write();
t.read();
}
publicvoidwrite()throwsException
{
Stringpath=this.getClass().getClassLoader().getResource("test.txt").toURI().getPath();
OutputStreamos=newFileOutputStream(path);
DataOutputStreamdos=newDataOutputStream(os);
dos.writeDouble(Math.random());
dos.writeBoolean(true);
dos.writeInt(1000);
dos.writeInt(2000);
dos.flush();
os.close();
dos.close();
}
publicvoidread()throwsException
{
InputStreaminstream=this.getClass().getClassLoader().getResourceAsStream("test.txt");
DataInputStreamdis=newDataInputStream(instream);
doubled=dis.readDouble();
booleanb=dis.readBoolean();
//先写的先被读出来
inti1=dis.readInt();
inti2=dis.readInt();
instream.close();
dis.close();
System.out.println(d);
System.out.println(b);
System.out.println(i1);
System.out.println(i2);
}
}
输出结果
0.4683893857027681
true
1000
2000
C. java中DataInputStream如何读取我们控制台的字符串
java中DataInputStream使用构造参数,使用bufferreader,输入参数system.in就可以读取控制台的字符串,如下代码:
importjava.io.BufferedInputStream;
importjava.io.DataInputStream;
importjava.io.IOException;
publicclassceshi{
publicstaticvoidmain(String[]args){
DataInputStreamin=newDataInputStream(newBufferedInputStream(
System.in));//新建DateInputSteam,接收控制台的信息
Strings;
try{
while((s=in.readLine()).length()!=0)
System.out.println(s);//读取控制台信息,并打印出来
//
}catch(IOExceptione){
e.printStackTrace();
}
}
}
运行结果如下:
D. Java中的DataInputStream和DataOutputStream的作用
Java中输出流分为DataInputStream(数据输入流)和DataOutputStream(数据输出流):
DataOutputStream:数据输出流允许应用程序以适当方式将基本 Java 数据类型写入输出流中。然后应用程序可以使用数据输入流将数据读入。
DataInputStream:数据输入流允许应用程序以与机器无关方式从底层输入流中读取基本 Java 数据类型。应用程序可以使用数据输出流写入稍后由数据输入流读取的数据。对于多线程访问不一定是安全的。 线程安全是可选的,它由此类方法的使用者负责。