File file=new File("f://file.txt");
try {
FileOutputStream fos=new FileOutputStream(file);
DataOutputStream dos=new DataOutputStream(fos);
int n=123;
int i=1;
/* for(i=0;i<=100;i++){
dos.writeDouble(Math.random());
dos.writeChars("\n");
}*/
dos.writeInt(n);
dos.flush();
dos.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
为什么写入的 {,而不是123 ???
try {
FileOutputStream fos=new FileOutputStream(file);
DataOutputStream dos=new DataOutputStream(fos);
int n=123;
int i=1;
/* for(i=0;i<=100;i++){
dos.writeDouble(Math.random());
dos.writeChars("\n");
}*/
dos.writeInt(n);
dos.flush();
dos.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
为什么写入的 {,而不是123 ???
如果你想要存储后打开文本文件显示123,那么你直接存入字符串"123"
import java.io.*;public class DataOutputStreamDemo {
public static void main(String[] args) {
File file=new File("f://file.txt");
try {
FileOutputStream fos=new FileOutputStream(file);
DataOutputStream dos=new DataOutputStream(fos);
int n=123;
int i=1;
/* for(i=0;i<=100;i++){
dos.writeDouble(Math.random());
dos.writeChars("\n");
}*/
// dos.writeInt(n);
dos.writeBytes("123");
dos.flush();
dos.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}其实即便你打开文本编辑器显示的是{,用DataInputStream读出来的值仍然是123,你自己可以用DataInputStream流取出来看看,用int或byte取出来123,用String取出来就是 {
楼上已经解释过了
{
public static void main(String[] args) throws Exception
{
FileOutputStream fos=new FileOutputStream("Test.txt");
DataOutputStream out=new DataOutputStream(fos);
int n=123;
out.writeBytes(String.valueOf(n)); //先将123转化成字符串,将字符串按字节顺序写出到基础输出流中。
out.close();
fos.close();
FileInputStream fis=new FileInputStream("Test.txt");
DataInputStream in=new DataInputStream(fis);
byte[] b=new byte[1024];
int i;
if((i=in.read(b,0,b.length))!=-1)
{
System.out.println(new String(b,0,i));
}
fis.close();
in.close();
}
}