myactions.java

来自「设计一个类似于Windows系统记事本的程序」· Java 代码 · 共 90 行

JAVA
90
字号

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class MyActions {
	
	static final long serialVersionUID = 3228193999994336070L;

	String fileOpen() {
		BufferedReader in = null;							
		JFrame dialogFrame = new JFrame();			
		String filePath;												
		StringBuffer sbTemp = new StringBuffer(""); 	
		String sTemp = null;								
		
		JFileChooser c = new JFileChooser();
		ExampleFileFilter filter = new ExampleFileFilter();
		filter.addExtension("txt");
		filter.setDescription("文本文件");
		c.setFileFilter(filter);

		int rVal = c.showOpenDialog(dialogFrame);
		if(rVal == JFileChooser.APPROVE_OPTION) {
			filePath = c.getSelectedFile().getPath();
			try{
				in = new BufferedReader(new FileReader(filePath));
			} catch (FileNotFoundException e1) {
				e1.printStackTrace();
			}
			
			try {
				while((sTemp = in.readLine()) != null ) {
					sbTemp.append(sTemp + "\n");
				}
			} catch (IOException e2) {
				e2.printStackTrace();
			}
			try {
				in.close();
			} catch (IOException e3) {
				e3.printStackTrace();
			}
		}
		return (sbTemp.toString());
	}


	void fileSave() {
		fileSaveAs();
	}
	
	String fileSaveAs() {

		JFrame dialogFrame = new JFrame();				
		StringBuffer filePath = new StringBuffer("");	
		

		JFileChooser c = new JFileChooser();
		ExampleFileFilter filter = new ExampleFileFilter();
		filter.addExtension("txt");
		filter.setDescription("文本文件");
		c.setFileFilter(filter);
	

		int rVal = c.showSaveDialog(dialogFrame);
		if(rVal == JFileChooser.APPROVE_OPTION) {
			filePath.append(c.getSelectedFile().getPath());
		}
		

		if ((filePath.lastIndexOf(".")) == -1) {
			filePath.append(".txt");
			return(filePath.toString());
		}
		else
			return (filePath.toString());
	}
	
	int fileNotSaveMessage(){
		int i;
		i = JOptionPane.showConfirmDialog(null, 
				"文件已经更改,想保存文件吗?", "记事本", JOptionPane.YES_NO_OPTION);
		return i;
	}
}

⌨️ 快捷键说明

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