二进制文件是包含在 ASCII 及擴展 ASCII 字符中編寫的數據或程序指令的文件。一般是可執行程序、圖形、圖象、聲音等等文件。
文本文件(也稱为ASCII文件):它的每一個字節存放的是可表示為一個字符的ASCII代碼的文件。它是以 “行”為基本結構的一種信息
組織和存儲方式的文件,可用任何文字处理程序阅读的簡單文本文件.
import java.io.*;
class FileTest
{
public static void main(String[] args) throws Exception //I/O操作會拋出異常
{
//File f=new File("1.txt");
//f.createNewFile();
f.mkdir(); //創建一個目錄
File f=new File("E:\\Java\\Code\\Test.txt");//轉譯字符,表示 絕對路徑
f.createNewFile();
File fDir=new File(File.separator);//分隔符(這樣會不依賴于系統)在Linux系統下的分隔符是正斜杠.
String strFile="Java"+File.separator+"Code"+
File.separator+"Test.txt";
File f=new File(fDir,strFile);
f.createNewFile();
//f.delete(); //運行時刪除
f.deleteOnExit();//運行結束后刪除
}
{
public static void main(String[] args) throws Exception //為了方便只寫拋出異常
{
FileOutputStream fos=new FileOutputStream("test.txt");
fos.write("Welcome to java world!".getBytes());
fos.close();
BufferedOutputStream bos=new BufferedOutputStream(fos);
bos.write("http://www.kaifulee.com/".getBytes());
bos.flush();
bos.close();
DataOutputStream dos=new DataOutputStream(bos);
byte b=3;
int i=78;
char ch='a';
float f=4.5f;
dos.writeByte(b);
dos.writeInt(i);
dos.writeChar(ch);
dos.writeFloat(f);
dos.close();
FileInputStream fis=new FileInputStream("test.txt");
BufferedInputStream bis=new BufferedInputStream(fis);
byte[] buf=new byte[100];
int len=fis.read(buf);
int len=bis.read(buf);
System.out.println(new String(buf,0,len));
fis.close();
bis.close();
DataInputStream dis=new DataInputStream(bis);
System.out.println(dis.readByte());
System.out.println(dis.readInt());
System.out.println(dis.readChar());
System.out.println(dis.readFloat());
dis.close();
}
}
class PipedStreamTest
{
public static void main(String[] args)
{
PipedOutputStream pos=new PipedOutputStream();
PipedInputStream pis=new PipedInputStream();
try
{
pos.connect(pis);
new Producer(pos).start();
new Consumer(pis).start();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
{
private PipedOutputStream pos;
public Producer(PipedOutputStream pos)
{
this.pos=pos;
}
public void run()
{
try
{
pos.write("Hello,welcome you!".getBytes());
pos.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
{
private PipedInputStream pis;
public Consumer(PipedInputStream pis)
{
this.pis=pis;
}
public void run()
{
try
{
byte[] buf=new byte[100];
int len=pis.read(buf);
System.out.println(new String(buf,0,len));
pis.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
OutputStreamWriter osw=new OutputStreamWriter(fos);
BufferedWriter bw=new BufferedWriter(osw);
bw.write("http://www.baidu.com/");
bw.close();
FileInputStream fis=new FileInputStream("1.txt");
InputStreamReader isr=new InputStreamReader(fis);
BufferedReader br=new BufferedReader(isr);
System.out.println(br.readLine());
br.close();
InputStreamReader isr=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(isr);
String strLine;
while((strLine=br.readLine())!=null)
{
System.out.println(strLine);
}
br.close();