import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FilenameFilter;
import java.io.IOException;
import java.io.PipedInputStream;
import java.io.PipedOutputStream;
import java.io.Reader;
import java.rmi.server.ExportException;
public class testIOfile {
public static void main(String [] args) throws Exception
{
/*File fdir = new File(File.separator);
String str = "."+File.separator+"testio.txt";
File f1 = new File(fdir, str);
f1.createNewFile();
//f1.delete();
Thread.sleep(3000);
f1.deleteOnExit();
*/
/*
for(int i =0; i< 5;i++)
{
File.createTempFile("wjc",".txt");
}*/
/*
File fdir = new File(File.separator);
String str = ".";
File f = new File(fdir,str);
//文件过滤器
String [] filename = f.list(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
// TODO Auto-generated method stub
return name.indexOf("js") !=-1;
}
});
for(int i= 0; i< filename.length;i++)
{
System.out.println(filename[i]);
}
*/
//read and write
/*int data;
while((data=System.in.read())!=-1)
{
System.out.write(data);
}
*/
//**read&write
/*
FileOutputStream ou= new FileOutputStream("a.txt");
ou.write("this is test".getBytes());
System.out.println("this is test".getBytes());
ou.close();
FileInputStream in = new FileInputStream("a.txt");
byte[] buf= new byte[100];
int len = in.read(buf);
System.out.println(new String(buf, 0 , len));
in.close();
*/
/*
FileOutputStream ou= new FileOutputStream("a.txt");
BufferedOutputStream bf = new BufferedOutputStream(ou);
bf.write("this is wangjunchun\n".getBytes());
bf.write("this is wangjunchun\n".getBytes());
bf.write("this is wangjunchun\n".getBytes());
bf.flush();
bf.close();
FileInputStream in = new FileInputStream("a.txt");
BufferedInputStream bfi= new BufferedInputStream(in);
byte[] buf= new byte[100];
int len = bfi.read(buf);
System.out.println(new String(buf, 0 , len));
bfi.close();
*/
/*利用管道读写*/
PipedOutputStream pos = new PipedOutputStream();
PipedInputStream pis = new PipedInputStream();
try
{
pis.connect(pos);
new Producer(pos).start();
new Custmor(pis).start();
}
catch(Exception e)
{
}
}
}
class Producer extends Thread
{
private PipedOutputStream pos;
Producer(PipedOutputStream pos)
{
this.pos = pos;
}
public void run()
{
try
{
pos.write("this is write".getBytes());
}
catch(Exception e)
{
}
}
}
class Custmor extends Thread
{
private PipedInputStream pis;
public Custmor( PipedInputStream pis) {
this.pis=pis;
}
public void run()
{
try
{
byte [] bs = new byte[100];
int len = pis.read(bs);
System.out.println(new String(bs,0, len));
}
catch(Exception e)
{
}
}
}