文件内再分类到各txt文件
当老师叫我们帮他做事,比如文件内内容再分类,我们就可以建个面板,里面有各要导入文件按钮,先把分类内容copy下,再点按钮导入进txt文件就行啦。
以下为java代码,使用了tableLayout布局
package classification; import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import layout.TableLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
import java.io.BufferedReader;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable; public class Classification extends JFrame implements ActionListener{
public Classification(){ // 创建一个窗口。
Frame frame = new Frame("Classification");
frame.setBounds (1300 , 100, 200, 450); //设置背景颜色。
frame.setBackground(Color.black); //在这个窗口创建一个网格。
double size[][] =
{
//0 ,1 ,2 ,3
{TableLayout.FILL,TableLayout.FILL}, //列
{TableLayout.FILL,TableLayout.FILL,TableLayout.FILL,TableLayout.FILL,TableLayout.FILL} //行
};
TableLayout layout = new TableLayout(size);
frame.setLayout(layout); //创建一些按钮. //编辑字体
Font B = new Font("宋体",Font.PLAIN,30); //写入文本数组。
for (int i = 0;i < Button.length;i++)
{
button[i] = new Button(Button[i]);
} //应用字体。
//按钮字体。
for(int i = 0; i <= 9; i++) {
button[i].setFont(B);
button[i].setForeground(Color.black);
} //添加按钮
frame.add(button[0],"0,0,0,0"); //1
frame.add(button[1],"1,0,1,0"); //2
frame.add(button[2],"0,1,0,1"); //3
frame.add(button[3],"1,1,1,1"); //4
frame.add(button[4],"0,2,0,2"); //5
frame.add(button[5],"1,2,1,2"); //6
frame.add(button[6],"0,3,0,3"); //7
frame.add(button[7],"1,3,1,3"); //8
frame.add(button[8],"0,4,0,4"); //9
frame.add(button[9],"1,4,1,4"); //撤回 for(int i = 0; i <= 9; i++) {
button[i].addActionListener(this) ;
} //编辑按钮
for(int i = 0; i <= 9; i++) {
button[i].setFont(B);
button[i].setBackground(Color.green);
} //添加窗口关闭。
frame.addWindowListener
(new WindowAdapter()
{
public void windowClosing (WindowEvent e)
{
System.exit (0);
}
}
); //窗口置顶。
frame.setAlwaysOnTop(true); //显示窗口。
frame.show(); }
String Button[] = {"1","2","3","4","5","6","7","8","9",""};
Button button[] = new Button[Button.length]; public static void main(String[] args) {
new Classification();
} //路径
String[] s = {
"D:\\homework\\chapter1.txt",
"D:\\homework\\chapter2.txt",
"D:\\homework\\chapter3.txt",
"D:\\homework\\chapter4.txt",
"D:\\homework\\chapter5.txt",
"D:\\homework\\chapter6.txt",
"D:\\homework\\chapter7.txt",
"D:\\homework\\chapter8.txt",
"D:\\homework\\chapter9.txt"
}; //文件读入粘贴板内容
public static void method2(String fileName, String content) {
FileWriter writer = null;
try {
writer = new FileWriter(fileName,true);
Clipboard sysClip = Toolkit.getDefaultToolkit().getSystemClipboard();
// 获取剪切板中的内容
Transferable clipTf = sysClip.getContents(null);
if (clipTf != null) {
// 检查内容是否是文本类型
if (clipTf.isDataFlavorSupported(DataFlavor.stringFlavor)) {
try {
content = (String) clipTf
.getTransferData(DataFlavor.stringFlavor);
writer.write(content);
} catch (Exception e) {
e.printStackTrace();
}
}
} }catch(IOException e) {
e.printStackTrace();
}
finally {
try {
if(writer != null) {
writer.close();
}
}catch(IOException e) {
e.printStackTrace();
}
}
}
//按钮响应
public void actionPerformed(ActionEvent e) {
if(e.getSource() == button[0])
try {
method2(s[0],"");
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
if(e.getSource() == button[1])
try {
method2(s[1],"");
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
if(e.getSource() == button[2])
try {
method2(s[2], "");
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
if(e.getSource() == button[3])
try {
method2(s[3],"");
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
if(e.getSource() == button[4])
try {
method2(s[4],"");
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
if(e.getSource() == button[5])
try {
method2(s[5],"");
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
if(e.getSource() == button[6])
try {
method2(s[6],"");
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
if(e.getSource() == button[7])
try {
method2(s[7],"");
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
if(e.getSource() == button[8])
try {
method2(s[8],"");
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
} }
文件内再分类到各txt文件的更多相关文章
- WPF: 读取XPS文件或将word、txt文件转化为XPS文件
读取XPS格式文件或将doc,txt文件转化为XPS文件,效果图如下: 1.XAML页面代码: <Window x:Class="WpfWord.MainWindow" xm ...
- WFP: 读取XPS文件或将word、txt文件转化为XPS文件
读取XPS格式文件或将doc,txt文件转化为XPS文件,效果图如下: 1.XAML页面代码: <Window x:Class="WpfWord.MainWindow" ...
- 读取同一文件夹下多个txt文件中的特定内容并做统计
读取同一文件夹下多个txt文件中的特定内容并做统计 有网友在问,C#读取同一文件夹下多个txt文件中的特定内容,并把各个文本的数据做统计. 昨晚Insus.NET抽上些少时间,来实现此问题,加强自身的 ...
- C++实现从一个文件夹中读出所有txt文件
前段时间做项目需要读取一个文件夹里面所有的txt文件,查询资料后得到以下实现方法:首先了解一下这个结构体struct _finddata_t { unsigned attrib; t ...
- MATLAB实例:新建文件夹,保存.mat文件并保存数据到.txt文件中
MATLAB实例:新建文件夹,保存.mat文件并保存数据到.txt文件中 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 用MATLAB实现:指定路径下 ...
- matlab如何读取未知行数,带头文件和字段名的txt文件
文件格式是这样的 20120108 50024 X235RZB30801 01 15 2361 2362 2363 2364 2365 2366 2367 2368 2369 236A 236B 23 ...
- VBA读取可选择文件夹下可选择txt文件内容
Sub OneTxt() '打开一个txt文件 Dim Filename As Variant, extLine&, mArr() As String Dim i%, j% ChDir Thi ...
- C# 读取网络txt文件 并写在本地txt文件中
public void WriteStream() { try { stirng ImagesPath = ImagesPath + "\\2013-09-27.txt"; Htt ...
- c++--------获取某个路径下所有文件的文件名,读写TXT文件到新的文件
好久没写io操作了,手生了好多,为了防止自己老年痴呆,最简单实用的c++代码也push上来吧, 环境:mac,xcode(注意mac环境下Windows的函数不能用) 功能:打开一个文件目录,把所有文 ...
随机推荐
- PHP小知识收集
PEAR 是"PHP Extension and Application Repository"的缩写,即PHP扩展和应用仓库. PECL 是"PHP Extension ...
- 金玉良缘易配而木石前盟难得|M1 Mac os(Apple Silicon)天生一对Python3开发环境搭建(集成深度学习框架Tensorflow/Pytorch)
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_189 笔者投入M1的怀抱已经有一段时间了,俗话说得好,但闻新人笑,不见旧人哭,Intel mac早已被束之高阁,而M1 mac已经 ...
- 还在用Alpine作为你Docker的Python开发基础镜像?其实Ubuntu更好一点
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_173 一般情况下,当你想为你的Python开发环境选择一个基础镜像时,大多数人都会选择Alpine,为什么?因为它太小了,仅仅只有 ...
- #万答10:mysqldump 是如何实现一致性备份的
万答10:mysqldump 是如何实现一致性备份的 实验场景 MySQL 8.0.25 InnoDB 实验步骤: 先开启 general_log 观察导出执行过程的变化 set global gen ...
- [算法1-排序](.NET源码学习)& LINQ & Lambda
[算法1-排序](.NET源码学习)& LINQ & Lambda 说起排序算法,在日常实际开发中我们基本不在意这些事情,有API不用不是没事找事嘛.但必要的基础还是需要了解掌握. 排 ...
- 下载markdown软件Obsidian(解决官网下载速度慢)
Typora要钱了,不想每次都点稍后再买. Obsidian也很好用,官网是:https://obsidian.md/ 但是不太好下载,直接下载速度只有10kb/s左右,总共60多MB: 扔给迅雷也没 ...
- Luogu3398 仓鼠找sugar (LCA)
第一发lg[]没开够RE了,下了数据本地一直停止运行,还以为是dfs死了,绝望一交,A了... 判断\(x\)是否在路径\(s-t\)上,只需满足 \(dep_{x} >= dep_{LCA(s ...
- Dart 异步编程(二):async/await
对每一个异步任务返回的 Future 对象都使用链式操作-- then ,超过三个以上时,导致"倒三角"现象,降低代码的可阅读性. getHobbies() { post('htt ...
- Python小游戏——外星人入侵(保姆级教程)第一章 01创建Pygame窗口 02创建设置类Setting()
系列文章目录 第一章:武装飞船 01:创建Pygame窗口以及响应用户输入 02:创建设置类Setting() 一.前期准备 1.语言版本 Python3.9.0 2.编译器 Pycharm2022 ...
- Vue 监听器和计算属性到底有什么不同?
各自的适用场景 计算属性临时快照 官方文档对于计算属性提到了一个重要的点子--"临时快照"(可能就是前面说的计算属性缓存),每当源状态发生变化时,就会创建一个新的快照. 有时候创建 ...