Java Swing实现文件的简单读取

用java Swing实现读写文件的操作

开发平台:eclipse

安装WindowsBuilder插件

参考:https://blog.csdn.net/stormdony/article/details/79497030

新建项目及界面布局

1.File->new->Project

选择General->"Project"或者WindowBuilder->SWT Designer->"SWT/JFace Java Project",点击next

2.Ctrl+N 新建类

选择WindowBuilder->Swing Designer->"Application Window"或"JFrame",点击next

3.页面布局

进入设计界面

3.1 使用GroupLayout管理页面布局

java Swing窗体有默认布局,我们需要使用GroupLayout,不受默认布局的约束,在Palette栏Layouts选框下选择GroupLayout,拖动到窗体上

3.2 使用JScrollPane控件为文本区添加滚动条

Palette栏Containers选框下选择JScrollPane,拖动到窗体上,改变大小为文本域显示大小

3.3 选择JTextArea放入JScrollPane

3.4 选择JLable,JTextField,JTextArea,JButton等控件部署在界面上

JTextFeild和JTextArea的区别:

JTextArea,可以在里面输入多行文字
JTextField ,只能在里面输入一行文字,也就是单行文本框,JTextField回车会触发ActionEvent事件

代码

双击界面按钮,编写按钮点击事件代码

定义数据成员:

private File openFile;                        //文件类
private FileInputStream fileInputStream;       //字节文件输入流 
private FileOutputStream fileOutputStream;     //字节文件输出流
private OutputStreamWriter outputStreamWriter; //字符文件输出流

1.Browse浏览系统文件代码:

JButton btnBrowse = new JButton("Browse");    //自动生成
btnBrowse.addActionListener(new ActionListener() {
	public void actionPerformed(ActionEvent e) {
        //自己撰写
		JFileChooser chooser = new JFileChooser(); //文件选择
		chooser.showOpenDialog(chooser);        //打开文件选择窗
		openFile = chooser.getSelectedFile();  	//获取选择的文件
		textPath.setText(openFile.getPath());	//获取选择文件的路径				
	}
});

2.read读取代码

JButton btnRead = new JButton("Read");    //系统自动生成
btnRead.addActionListener(new ActionListener() {
	public void actionPerformed(ActionEvent e) {
        //自己撰写
		openFile = new File(textPath.getText());
		try {
			if(!openFile.exists()){      //如果文件不存在
				openFile.createNewFile();//创建文件
			}
			fileInputStream = new FileInputStream(openFile); //创建文件输入流
			byte b[] = new byte[(int) openFile.length()];  //定义文件大小的字节数据
			fileInputStream.read(b);          //将文件数据存储在b数组
			content = new String(b,"UTF-8"); //将字节数据转换为UTF-8编码的字符串
			textArea.setText(content);        //文本区显示文件内容
			fileInputStream.close();          //关闭文件输入流
		} catch (Exception e1) {
			e1.printStackTrace();
		}
	}
});

3.Save保存文件

JButton btnSave = new JButton("Save");            //自动生成
btnSave.addActionListener(new ActionListener() {
	public void actionPerformed(ActionEvent e) {
        //自己撰写
		openFile = new File(textPath.getText());
		try {
			fileOutputStream = new FileOutputStream(openFile);
			outputStreamWriter = new OutputStreamWriter(fileOutputStream,"utf-8");
			content = textArea.getText();
			outputStreamWriter.write(content);
			outputStreamWriter.flush();		//清空缓存
			outputStreamWriter.close();		//关闭文件字符输出流
			fileOutputStream.close();		//关闭文件字节输出流
			
		} catch (Exception e1) {
			e1.printStackTrace();
		}
		
	}

4.退出系统

在Exit按钮点击响应事件代码里加入:

System.exit(0);

 

  • 10
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 使用java Swing实现文件上传操作,首先需要使用JFileChooser组件实现文件选择,然后使用URLConnection和HttpURLConnection来发送文件数据,最后使用InputStream进行流的读取和写入操作即可实现文件上传操作。 ### 回答2: 使用Java Swing实现文件上传操作可以通过以下步骤实现: 1. 创建一个Swing界面,包含选择文件按钮、上传按钮和文件名显示框等组件。 2. 在选择文件按钮的事件监听中,使用JFileChooser弹出文件选择框。用户可以选择要上传的文件。 3. 在上传按钮的事件监听中,获取用户选择的文件路径。 4. 使用File和FileInputStream打开选择的文件,并将其读入到字节数组中。 5. 创建一个Socket连接到服务器的指定端口,并将文件内容以字节数组的形式通过Socket发送到服务器。 6. 在服务器端创建一个ServerSocket并监听指定端口,接受客户端的连接。然后使用InputStream和FileOutputStream将接收到的文件内容写入到指定目录。 7. 在客户端和服务器端都需要实现错误处理,包括连接中断、文件不存在等异常情况的处理。 8. 在上传过程中可以实现进度条显示上传进度。 通过以上步骤,可以使用Java Swing实现文件上传操作。注意,这只是一个基本的文件上传实现,实际应用中还需要处理更多细节和异常情况。 ### 回答3: 使用Java Swing实现文件上传操作可以按照以下步骤进行: 1. 创建一个Swing的用户界面,可以使用JFileChooser组件来实现文件选择功能。通过调用JFileChooser的showOpenDialog方法,可以弹出一个文件选择对话框,用户可以选择上传的文件。 2. 获取用户选择的文件路径,可以使用JFileChooser的getSelectedFile方法获得用户选择的文件的File对象。 3. 创建一个上传按钮,并为上传按钮添加监听事件。在监听事件中,获取用户选择的文件,然后将文件上传到服务器。 4. 在监听事件中,使用IO流将文件传输到服务器。可以使用FileInputStream来读取文件内容,并使用Socket将文件内容发送到服务器。 5. 在服务器端实现接收文件的功能,可以使用ServerSocket监听指定端口,然后使用Socket的accept方法接收客户端发送的文件内容。 6. 服务器接收到文件内容后,可以使用FileOutputStream将文件内容写入服务器的文件系统中,保存上传的文件。 7. 在客户端和服务器端都需要处理异常情况,如文件不存在、网络连接异常等。可以使用try-catch语句来捕获异常,并进行相应的处理。 通过以上步骤,我们就可以使用Java Swing实现文件上传操作。需要注意的是,文件上传操作涉及到网络传输和文件操作,需要确保网络连接正常和有相应的权限支持。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值