日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java 只显示文本文件_Java设计并实现一个应用程序,能够读取一个文本文件中的内容并显示,同时能够计算出文本中的行数。...

發布時間:2024/9/19 java 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 只显示文本文件_Java设计并实现一个应用程序,能够读取一个文本文件中的内容并显示,同时能够计算出文本中的行数。... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

展開全部

java編寫顯示文本的應用程序, 需要用到圖形界面GUI編程技術.

步驟一: 需要搭建一個整體的外觀32313133353236313431303231363533e4b893e5b19e31333363373830, ?調整布局和組件的位置.

主要需要使用的組件

JTextField 文本框組件: 用于當做地址欄, 填寫文件的路徑

JButton 按鈕, 用于響應點擊事件,根據地址欄的地址讀取文件, 并且顯示到文本域里

JTextArea 文本域, 用于顯示文件里的字符串信息

JLabel ?標簽, 用于顯示行數信息

布局: 使用邊界布局BorderLayout,可以快速按照上下左右中的位置快速布局.

步驟二: IO流,讀取文本文件信息,并統計行數.

由于要按行讀取,方便計算文件的行數, 所以使用Buffered 可以事半功倍.

核心代碼如下StringBuffer?txtbuf=new?StringBuffer();//用于保存文本信息

int?lines=0;//用于計算行數

try?{

BufferedReader?br?=?new?BufferedReader(new?FileReader(fp));

String?hasRead=null;

while((hasRead=br.readLine())!=null){

txtbuf.append(hasRead+"\n");

lines++;

}

br.close();//IO流用完記得關閉

}?catch?(Exception?e)?{

//當IO出現異常時,要進行提示

JOptionPane.showMessageDialog(this,?"文件讀取錯誤,確認文件存在,\n或者沒有被其他文件打開.","IO錯誤",JOptionPane.ERROR_MESSAGE);;

}

步驟三:整合代碼import?java.awt.*;

import?java.awt.event.*;

import?java.io.*;

import?javax.swing.*;

public?class?ShowTextFrame?extends?JFrame?implements?ActionListener{

JTextArea?jta;//該文本域用于顯示文本信息

JTextField?jtf;//該文本框,用于填寫文件路徑

JLabel?jl;//該標簽用于保存讀取到的行數

JButton?jbt;//按鈕

public?ShowTextFrame()?{

jtf?=?new?JTextField(18);

jbt?=?new?JButton("讀取并顯示");

jbt.addActionListener(this);

JPanel??jp1?=?new?JPanel();

jp1.add(jtf);

jp1.add(jbt);

add(jp1,BorderLayout.NORTH);

jta?=?new?JTextArea();

JScrollPane?jsp?=?new?JScrollPane(jta);//文本域添加到滾動面板

jsp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);//垂直滾動條一直顯示

add(jsp);

jl?=?new?JLabel("文件共有0行");

JPanel?jp2?=?new?JPanel();

jp2.add(jl);

add(jp2,BorderLayout.SOUTH);

setTitle("顯示文本");//窗口標題

setSize(380,?320);

setLocationRelativeTo(null);//窗口居中

setDefaultCloseOperation(EXIT_ON_CLOSE);

setVisible(true);

}

public?void?actionPerformed(ActionEvent?e)?{

if(jbt==e.getSource()){

String?fp?=?jtf.getText().trim();

Info?info?=?getInfo(fp);

jta.setText(info.txt);//把文本信息顯示到文本域

jl.setText("文件共有"+info.lines+"行");//把行數顯示顯示到JLabel

}

}

public?Info?getInfo(String?fp){//通過文件路徑,獲取文件信息(字符串信息和行數信息)

StringBuffer?txtbuf=new?StringBuffer();

int?lines=0;

try?{

BufferedReader?br?=?new?BufferedReader(new?FileReader(fp));

String?hasRead=null;

while((hasRead=br.readLine())!=null){

txtbuf.append(hasRead+"\n");

lines++;

}

br.close();//IO流用完記得關閉

}?catch?(Exception?e)?{

//當IO出現異常時,要進行提示

JOptionPane.showMessageDialog(this,?"文件讀取錯誤,確認文件存在,\n或者沒有被其他文件打開.","IO錯誤",JOptionPane.ERROR_MESSAGE);;

}

return?new?Info(txtbuf.toString(),?lines);

}

public?static?void?main(String[]?args)?{

new?ShowTextFrame();//創建窗口實例

}

}

class?Info{//輔助類,?用于傳遞信息

String?txt;//文字信息

int?lines;//?行數信息

public?Info(String?txt,?int?lines)?{

this.txt?=?txt;

this.lines?=?lines;

}

}

運行效果圖

總結

以上是生活随笔為你收集整理的java 只显示文本文件_Java设计并实现一个应用程序,能够读取一个文本文件中的内容并显示,同时能够计算出文本中的行数。...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。