如何实现把student.txt中的内容显示在JTextArea 中 并且实现按钮事件

问题描述

请把以下代码student加到gui代码中:packagejavaapplication1;publicclassdemoextendsjavax.swing.JFrame{publicdemo(){initComponents();}@SuppressWarnings("unchecked")privatevoidinitComponents(){jScrollPane1=newjavax.swing.JScrollPane();jTextArea1=newjavax.swing.JTextArea();jScrollPane2=newjavax.swing.JScrollPane();jTextArea2=newjavax.swing.JTextArea();jLabel1=newjavax.swing.JLabel();jSeparator1=newjavax.swing.JSeparator();jButton1=newjavax.swing.JButton();jButton2=newjavax.swing.JButton();jButton3=newjavax.swing.JButton();jButton4=newjavax.swing.JButton();setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);jTextArea1.setColumns(20);jTextArea1.setRows(5);jScrollPane1.setViewportView(jTextArea1);jTextArea2.setColumns(20);jTextArea2.setRows(5);jScrollPane2.setViewportView(jTextArea2);jLabel1.setText("抽奖器");jButton1.setText("排序");jButton2.setText("选择");jButton3.setText("开始");jButton3.addActionListener(newjava.awt.event.ActionListener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton3ActionPerformed(evt);}});jButton4.setText("退出");javax.swing.GroupLayoutlayout=newjavax.swing.GroupLayout(getContentPane());getContentPane().setLayout(layout);layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(layout.createSequentialGroup().addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(layout.createSequentialGroup().addContainerGap().addComponent(jScrollPane1,javax.swing.GroupLayout.PREFERRED_SIZE,javax.swing.GroupLayout.DEFAULT_SIZE,javax.swing.GroupLayout.PREFERRED_SIZE).addGap(18,18,18).addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(jButton4).addComponent(jButton3).addComponent(jButton2).addComponent(jButton1)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,51,Short.MAX_VALUE).addComponent(jScrollPane2,javax.swing.GroupLayout.PREFERRED_SIZE,146,javax.swing.GroupLayout.PREFERRED_SIZE)).addGroup(layout.createSequentialGroup().addGap(191,191,191).addComponent(jLabel1))).addContainerGap()).addComponent(jSeparator1,javax.swing.GroupLayout.DEFAULT_SIZE,438,Short.MAX_VALUE));layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(layout.createSequentialGroup().addGap(30,30,30).addComponent(jSeparator1,javax.swing.GroupLayout.PREFERRED_SIZE,14,javax.swing.GroupLayout.PREFERRED_SIZE).addGap(18,18,18).addComponent(jLabel1).addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(layout.createSequentialGroup().addGap(38,38,38).addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING,false).addComponent(jScrollPane2,javax.swing.GroupLayout.Alignment.LEADING).addComponent(jScrollPane1,javax.swing.GroupLayout.Alignment.LEADING,javax.swing.GroupLayout.DEFAULT_SIZE,359,Short.MAX_VALUE)).addContainerGap(34,Short.MAX_VALUE)).addGroup(javax.swing.GroupLayout.Alignment.TRAILING,layout.createSequentialGroup().addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jButton1).addGap(53,53,53).addComponent(jButton2).addGap(47,47,47).addComponent(jButton3).addGap(51,51,51).addComponent(jButton4).addGap(61,61,61)))));pack();}//</editor-fold>privatevoidjButton3ActionPerformed(java.awt.event.ActionEventevt){//TODOaddyourhandlingcodehere:}/***@paramargsthecommandlinearguments*/publicstaticvoidmain(Stringargs[]){java.awt.EventQueue.invokeLater(newRunnable(){publicvoidrun(){newdemo().setVisible(true);}});}//Variablesdeclaration-donotmodifyprivatejavax.swing.JButtonjButton1;privatejavax.swing.JButtonjButton2;privatejavax.swing.JButtonjButton3;privatejavax.swing.JButtonjButton4;privatejavax.swing.JLabeljLabel1;privatejavax.swing.JScrollPanejScrollPane1;privatejavax.swing.JScrollPanejScrollPane2;privatejavax.swing.JSeparatorjSeparator1;privatejavax.swing.JTextAreajTextArea1;privatejavax.swing.JTextAreajTextArea2;//Endofvariablesdeclaration}student.txt内的内容有100行。以下是importjava.io.*;importjava.util.*;publicclassTest9{privatestaticList<Student>students=newArrayList<Student>();publicstaticvoidmain(String[]args)throwsIOException{//读入学生数据,保存到Student对象数组中FileReaderfin=newFileReader("Students.txt");BufferedReaderin=newBufferedReader(fin);Stringline=in.readLine();while(line!=null){line=line.trim();//去除字符串中前后空格if(line.length()>0)//检查是否是空行{Studentstudent=newStudent();student.parseStudent(line);students.add(student);}line=in.readLine();}in.close();fin.close();Studentstudent=newStudent();//按姓名查找Comparator<Student>c=newStudent.NameComparator();Collections.sort(students,c);student.setName("杨晓非");intindex=Collections.binarySearch(students,student,c);System.out.println(students.get(index));}publicstaticvoidprintStudents(){Iterator<Student>iter=students.iterator();while(iter.hasNext()){Students=iter.next();System.out.println(s);}}}classStudentimplementsComparable<Student>{privateStringid;privateStringname;privateStringdepartment;publicvoidparseStudent(Stringstr){inttokenCount;StringTokenizert=newStringTokenizer(str);tokenCount=t.countTokens();id=t.nextToken();//学号name=t.nextToken();//姓名department=t.nextToken();//学院}publicStringtoString(){Strings=id+""+name;for(intl=s.length();l<21;l++)s+="";//对齐returns+department;}publicintcompareTo(Studento){return(id.compareTo(o.id));}publicvoidsetName(StringaName){name=aName;}publicstaticclassNameComparatorimplementsComparator<Student>{publicintcompare(Students1,Students2){returns1.name.compareTo(s2.name);}}publicclassDepartComparatorimplementsComparator<Student>{publicintcompare(Students1,Students2){returns1.department.compareTo(s2.department);}}}

解决方案

本帖最后由 spring_0832 于 2010-12-01 10:22:06 编辑
解决方案二:
好多的啊,要写关键代码就可以了
解决方案三:
按钮事件监听之后通过FileInputStream输入流来读取文件防止到文本域中
解决方案四:
publicstaticStringgetFileStr(Stringpath){InputStreamin=LGDao.class.getResourceAsStream(path);Stringstr="";try{str=convertStreamToString(in);}catch(IOExceptione){e.printStackTrace();}returnstr;}publicstaticStringconvertStreamToString(InputStreamis)throwsIOException{if(is!=null){StringBuildersb=newStringBuilder();Stringline;try{BufferedReaderreader=newBufferedReader(newInputStreamReader(is,"UTF-8"));while((line=reader.readLine())!=null){sb.append(line).append("n");}}finally{is.close();}returnsb.toString();}else{return"";}}
解决方案五:
LGDao.class.getResourceAsStream(path);这一行你改下LGDao改你放txt文件附近的一个类名然后用getFileStr方法读文件返回的String用setText写进去

时间: 2024-09-16 18:43:49

如何实现把student.txt中的内容显示在JTextArea 中 并且实现按钮事件的相关文章

想通过数据库中的内容显示在treeView的根节点,需要怎么办?

问题描述 左边是数据库中的内容显示在Listview中,我想让用户一列能显示在treeView的根节点处,求朋友们指点一二. 解决方案 解决方案二:这是我自己写的能显示在Listview中的代码我应该怎样改才能让用户名以Treeview根节点的形式显示在Treeview中?解决方案三:新建parentNode,名称为用户名,为其属性Nodes增加孩子nodes.解决方案四:循环数据库{treeView1.Nodes.Add}解决方案五:引用3楼bdmh的回复: 循环数据库{treeView1.N

C#中label内容显示不全、不完整的解决方法

  这篇文章主要介绍了C#中label内容显示不全.不完整的解决方法,只需要把两个属性设置一下即可解决这个问题,需要的朋友可以参考下 c# label的内容显示不全,需要设置如下属性即可: 1.将Lable的font属性的字体改成宋体; 2.将AutoSize属性改成true;

easyui-使用jQuery easyUI画出左侧树,点击节点,内容显示在center中的页面代码

问题描述 使用jQuery easyUI画出左侧树,点击节点,内容显示在center中的页面代码 点击一个节点,显示相应的数据信息在center中,center中是用datagrid显示的. 解决方案 你需要建立tab标签式的布局,点击就新建tab加载不同的datagrid,除非你datagrid数据结构一样,可以获取datagrid后传递链接参数给reload方法重新加载 DEMO:http://www.coding123.net/article/20131230/jQuery-easyui-

c#窗体-如何通过一个button来将datagridview中的内容更新到数据库中

问题描述 如何通过一个button来将datagridview中的内容更新到数据库中 我通过datatable来填充数据 但如何将datagridview中的更改后的数据更新到数据库中就不会了... private void Form2_Load(object sender, EventArgs e) { dataGridView1.AllowUserToAddRows = false; OleDbConnection conn = new OleDbConnection(); conn.Con

数据库中的内容显示在jsp页面上,要能按照一定的条件进行筛选

问题描述 数据库中的内容显示在jsp页面上,要能按照一定的条件进行筛选 数据库中的内容显示在jsp页面上,要能按照一定的条件进行筛选 解决方案 比如select * from user where uid=5,uid就是筛选条件,限制只有uid=5的数据才能被查询出来:delete from user where uid=5这个是删除uid=5的: update user set uname=?,pwd=?,sex=?,did=? where uid=?这个是根据uid修改对应sql数据 解决方

c# 2 0-如何将网页中指定DIV中的内容插入到WORD中指定标签位置进行替换?

问题描述 如何将网页中指定DIV中的内容插入到WORD中指定标签位置进行替换? 我用以下代码实现了文本替换指定标签.请问如何实现将网页中指定DIV中的内容对WORD中指定标签进行替换?请给出源码,请尽可能通过这个类进行操作.. protected void ReplaceWordDocAndSave(Microsoft.Office.Interop.Word.Document docObject, object savePath) { object format = Microsoft.Offi

xml-为什么不能将XML数据岛中的内容在HTML页面中显示?

问题描述 为什么不能将XML数据岛中的内容在HTML页面中显示? 下面是country.xml <?xml version="1.0" encoding="gb2312"?> <country> <provice id="0001"> <provice_name>浙江</provice_name> <provice_city>杭州</provice_city> &

把指定的DataSet中的内容导出到Excel中

  /// <summary>  /// 把指定的DataSet中的内容导出到Excel中.  /// </summary>  /// <param name="ds">ds参数为DateSet对象</param>  /// <param name="ImpStr">该字符串用来指定一些字段来导出,其使用格式为:aaa|AAA,bbb|BBB   小写字符串为在Excel表中显示该字段的列标题,大写表示字段

.net-android如何获取.NET搭建的webservice服务器中数据并显示到ListView中

问题描述 android如何获取.NET搭建的webservice服务器中数据并显示到ListView中 问题如题,我想要的是用.cs编写webservice,然后在android客户端获取服务器数据 刚学安卓,求指教~ 解决方案 参考: 在Android中调用C#写的WebService(附源代码)http://www.cnblogs.com/kissazi2/p/3406662.html 解决方案二: http://blog.csdn.net/lyq8479/article/details/