java的问题.,,用DataOutputStream的writerInt方法写入文本,,为什么不显示数字
importjava.io.*;publicclassP153_6{publicstaticvoidmain(Stringargs[]){SaveRandomIntFil...
import java.io.*;
public class P153_6
{
public static void main(String args[])
{
SaveRandomIntFile d=new SaveRandomIntFile();
}
}
class SaveRandomIntFile
{
SaveRandomIntFile()
{
try
{
int i[]=new int[5000];
FileOutputStream FOS=new FileOutputStream(new File("F.txt"));
DataOutputStream DOS=new DataOutputStream(FOS);
for(int j=0;j<i.length;j++)
{
i[j]=(int)(9999*Math.random()+1);
DOS.writeInt((int)i[j]);
}
DOS.close();
}
catch(Exception e)
{
}
}
}
其实我想知道的是,,怎样写入数据,,读出数据,,,我用我这个方法,,,写进去是乱码,,读出来是没问题的 展开
public class P153_6
{
public static void main(String args[])
{
SaveRandomIntFile d=new SaveRandomIntFile();
}
}
class SaveRandomIntFile
{
SaveRandomIntFile()
{
try
{
int i[]=new int[5000];
FileOutputStream FOS=new FileOutputStream(new File("F.txt"));
DataOutputStream DOS=new DataOutputStream(FOS);
for(int j=0;j<i.length;j++)
{
i[j]=(int)(9999*Math.random()+1);
DOS.writeInt((int)i[j]);
}
DOS.close();
}
catch(Exception e)
{
}
}
}
其实我想知道的是,,怎样写入数据,,读出数据,,,我用我这个方法,,,写进去是乱码,,读出来是没问题的 展开
4个回答
展开全部
程序写的没错!问题是:你没弄懂的是:写出去的是二进制的数据,而非你认为的文本的编码方式。做实验:你用二进制文件编辑器查看写出的文件就知道了,为了给你方便常看,我改写你的程序并简化了代码:
public class DataOutputStreamDemo {
public static void main(String args[]) throws IOException {
DataOutputStream dos = new DataOutputStream(new FileOutputStream(args[0]));
for (int i = 0; i < 5000; i++) dos.writeInt(i);
dos.flush();dos.close();
}
}
public class DataOutputStreamDemo {
public static void main(String args[]) throws IOException {
DataOutputStream dos = new DataOutputStream(new FileOutputStream(args[0]));
for (int i = 0; i < 5000; i++) dos.writeInt(i);
dos.flush();dos.close();
}
}
追问
怎么改?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
DataOutputStream 输出的是字节流,你保存在txt文档中再打开看当然会是乱码
看看DataOutputStream 的wirteInt()方法的说明
public final void writeInt(int v) throws IOException
将一个 int 值以 4字节值形式写入基础输出流中,
看看DataOutputStream 的wirteInt()方法的说明
public final void writeInt(int v) throws IOException
将一个 int 值以 4字节值形式写入基础输出流中,
追问
怎么改啊?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询