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();
}
}
测试结果: