0
import java.io.DataInputStream;
import java.io.FileOutputStream;
import java.io.FileInputStream;
import java.io.InputStream;
class Myclass
{
public static void main(String args[])
{
try{
//writing data into file from byte stream i.e FileOutputStream and reading from DataInputStream
int data[]={99,76,65,55,99};
FileOutputStream fout=new FileOutputStream("C:\\Users\\dell\\Desktop\\testingfile.txt");
for(int i:data)
{
fout.write(i);
}
Myclass m=new Myclass();
FileInputStream fin=new FileInputStream("C:\\Users\\dell\\Desktop\\testingfile.txt");
m.readMethod(fin);
}catch(Exception e)
{
System.out.println("Exception caught");
}
}
void readMethod(InputStream obj)
{
try{
DataInputStream din=new DataInputStream(obj);//noe datainputstream has only one constructor with parameter of Inputstream
int d;
while((d=din.readInt())!=-1)
{
System.out.println(d);
}
}catch(Exception E){}
}
我寫整數設置爲文件testingfile.txt與FileOutPutStream.I可寫(int)方法創建了一個方法readMethod從讀取整數文件與DataInputStream中可用的方法。但從文件讀取給我不同的輸出。它不同於我寫的數據。爲什麼是我的輸出不同?任何人都可以更正我的代碼或告訴我爲什麼這樣嗎?
產量:1665941815。從文件讀取突發輸出
非常感謝。這是否意味着即使我正在寫入int隱式它被轉換爲一個字節並寫入一個文件? – user5501265
是的,是的。所以你最好要關心文件。 –