⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 demostream.java

📁 java IO 操作 读写所有操作的例子
💻 JAVA
字号:

import java.io.*;
import javax.swing.JFrame;
import javax.swing.JFileChooser;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import java.awt.event.ActionListener;
import java.util.EventListener;
import java.awt.event.ActionEvent;

public class DemoStream extends JFrame implements ActionListener{
		private JFileChooser jfc = new JFileChooser();
		private JMenu jm = new JMenu("File");
		private JMenuBar jmb = new JMenuBar();
		private JMenuItem jmio = new JMenuItem("Open");
		private JMenuItem jmis = new JMenuItem("Save");
		private JTextArea jta = new JTextArea();
		
	public static void main(String args[]){
		//DemoStream e = new DemoStream();
		DemoStream e = new DemoStream("I/O");
		//e.readStream();
		//e.lowInputStreamToOut();
		//e.lowArrayReadFile();
		//e.hiCopyFile();
		//e.lowCopyFile();
		//e.hiReadFile();
		
	}
	public DemoStream(String title){
		super(title);
		this.setDefaultCloseOperation(3);
		this.add(new JScrollPane(jta));
		this.setJMenuBar(jmb);
		jmb.add(jm);
		jm.add(jmio);
		jm.add(jmis);
		jmio.addActionListener(this);
		jmis.addActionListener(this);
		this.setSize(400,400);
		this.setVisible(true);
	}
	public DemoStream(){
		
	}
	//屏幕取字打印到屏幕
	public void readToPrint(){
		try{
			BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
			String str ="";
			while(!(str = br.readLine()).equals("over")){
			System.out.println("-->"+str);
		}
		br.close();
		}catch(IOException e){
		}
		
	}
	//屏幕打字写到文件中
	public void inputToFile(){
		try{
			BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
			String str ="";
			
			File f = new File("d:/log.txt");
			BufferedWriter bw = new BufferedWriter(
				new OutputStreamWriter(new FileOutputStream(f)));
			while(!(str = br.readLine()).equals("over")){
				bw.write(str);
				bw.newLine();
			}
			br.close();
			bw.close();
		}catch(IOException e){
		}
	}
	//屏幕输入,输出到屏幕
	public void inputToSrc(){
		try{
			BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
			BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
			String str = "";
			while(!(str = br.readLine()).equals("over")){
				bw.write("-->"+str);
				bw.newLine();
				bw.flush();
			}
			br.close();
			bw.close();
		}catch(IOException e){
		}
	}
	//低级流输入打印
	public void readStream(){
		try{
			InputStreamReader isr = new InputStreamReader(System.in);
			int i = 0;
			while((i = isr.read()) != -1){
				System.out.println((char) i);
			}
		}catch(IOException e){
		}
	}
	//低级流输入,输出到屏幕
	public void lowInputStreamToOut(){
		try{
			InputStreamReader isr = new InputStreamReader(System.in);
			OutputStreamWriter osw = new OutputStreamWriter(System.out);
			int i = 0;
			while((i = isr.read()) != -1){
				osw.write(i);
				osw.flush();
			}
			isr.close();
			osw.close();
		}catch(Exception e){
		}
	}
	
	//使用数组的低级流的读取写出文件
	public void lowArrayReadFile(){
		try{
			FileInputStream fin = new FileInputStream("d:/test.txt");
			FileOutputStream out = new FileOutputStream("d:/test1.txt");
			byte[] buff = new byte[5];
			int num = 0;
			while((num=fin.read(buff,0,buff.length)) != -1){
				System.out.println("Loading.....");
				out.write(buff,0,num);
				
			}
			fin.close();
			out.close();
		}catch(Exception e){
		}
	}
	//高级流的文件读取
	public void hiReadFile(){
		try{
			BufferedReader br = new BufferedReader(new FileReader("d:/Test.java"));
			String str = "";
			while((str = br.readLine()) != null){
				System.out.println(str);
			}
			br.close();
		}catch(Exception e){
		}
	}
	//高级流文件读取与写入
	public void hiCopyFile(){
		try{
			System.out.println("高级流文件读取与写入");
			
			BufferedReader br = new BufferedReader(new FileReader("d:/test.txt"));
			BufferedWriter bw = new BufferedWriter(new FileWriter("D:/test1.txt"));
			String str= "";
			while((str = br.readLine()) != null){
				bw.write(str);
				bw.newLine();
				bw.flush();
			}
			bw.close();
		}catch(IOException e){
			e.printStackTrace();
		}
	}
	//低级流的文件复制
	public void lowCopyFile(){
		try{
			FileInputStream fin = new FileInputStream("d:/伦邦_20061007_2100.rar");
			FileOutputStream fout = new FileOutputStream("d:/test.rar");
			byte buff[] = new byte[1024];
			int num = 0;
			while((num = fin.read(buff,0,buff.length)) != -1){
				fout.write(buff,0,num);
				fout.flush();
			}
			fin.close();
			fout.close();
		}catch(Exception e){
		}
	}
	//介绍文件类的操作
	public void showFile(){
		try{
			File f = new File("");
			
			
		}catch(Exception e){
		}
	}

	public void actionPerformed(ActionEvent e) {
		try{
		
			if(e.getSource().equals(jmio)){
				int i = jfc.showOpenDialog(this);
				if(i==0){
					
					BufferedReader br = new BufferedReader(
						new FileReader(jfc.getSelectedFile()));
					String str = "";
					while((str = br.readLine()) != null){
						jta.append(str+"\n");
						
					}
					br.close();
				}
			}
			if(e.getSource().equals(jmis)){
				int i = jfc.showSaveDialog(this);
				
				if(i==0){
					BufferedWriter bw = new BufferedWriter(
					new FileWriter(jfc.getSelectedFile()));
					//bw.write(jta.getText());
					bw.close();
					jta.write(new FileWriter(jfc.getSelectedFile()));
				}
			}
		}catch(Exception ex){
			ex.printStackTrace();
		}
	}
	/**
	 * 1. 高级流读
	 * 2. 高级流读到屏幕
	 * 3. 低级流读
	 * 4. 低级流读到屏幕
	 * 5. 文件读
	 * 6. 文件写
	 * 7. 高级文件的复制
	 * 8. 低级流读写使用数组
	 * 9. 低级流的文件复制
	 * 10.在控制台读文件到界面上
	 * 11.实现文件读写用文件选择器
	 *
	 */
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -