Java同C#一樣,有多種文件讀寫方式。
博主測試時,曾無法讀出文件信息,bug出自寫入文件與讀物時所用數據格式不同。
OStream類
package com.anson.java;
import java.io.*;
public class OStream {
private File file;
private OutputStream outputStream;
/**
* 構造
*/
public OStream(){}
public OStream(String path)
{
try
{
file=new File(path);
outputStream =new FileOutputStream(file);
}
catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 寫入信息
*/
public void WriteStream()
{
try
{
for(int i=0;i<10;i++)
{
outputStream.write(i);
}
outputStream.close();
}
catch(IOException e)
{
e.printStackTrace();
}
}
}
IStream類
package com.anson.java;
import java.io.*;
public class IStream {
private File file;
private InputStream inputStream;
private int[] info;
public IStream()
{
}
/**
* 構造
* @param path
*/
public IStream(String path)
{
try
{
this.file=new File(path);
this.inputStream=new FileInputStream(this.file);
}
catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 讀取文件信息
*/
public void GetInfo()
{
try
{
int size=inputStream.available();
info=new int[size];
for(int i=0;i<size;i++)
{
info[i]=inputStream.read();
}
inputStream.close();
for(int item : info)
{
System.out.print(item+" ");
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
Test類測試
package com.anson.java;
public class Test {
/**
* @param args
*/
public static void main(String[] args)
{
//寫入
OStream write=new OStream("/home/anson/桌面/2");
write.WriteStream();
//讀取
IStream read=new IStream("/home/anson/桌面/2");
read.GetInfo();
}
}
測試結果: