|
導讀微信小程序,簡稱小程序,英文名Mini Program,是一種不需要下載安裝即可使用的應用,它實現了應用“觸手可及”的夢想,用戶掃一掃或搜一下即可打開應用。小程序是一種不用下載就能使用的應用,也是一... 微信小程序,簡稱小程序,英文名Mini Program,是一種不需要下載安裝即可使用的應用,它實現了應用“觸手可及”的夢想,用戶掃一掃或搜一下即可打開應用。小程序是一種不用下載就能使用的應用,也是一項門檻非常高的創新,經過將近兩年的發展,已經構造了新的小程序開發環境和開發者生態。 直接可以運行:選擇好src文件夾,直接點“統計行數”就可以啦import java.awt.EventQueue;
import java.awt.Font;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.border.EmptyBorder;
@SuppressWarnings("serial")
public class CountRows extends JFrame {
private JPanel contentPane;
private JTextField absolutePath;
private int num; // 用來存儲行數的
private String path;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
CountRows frame = new CountRows();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public CountRows() {
setTitle("\u7EDF\u8BA1\u4EE3\u7801\u884C\u6570");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 384, 185);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
absolutePath = new JTextField();
absolutePath.setBounds(67, 39, 200, 31);
contentPane.add(absolutePath);
absolutePath.setColumns(10);
JLabel lblSrc = new JLabel("src\u8DEF\u5F84");
lblSrc.setFont(new Font("宋體", Font.PLAIN, 15));
lblSrc.setBounds(10, 39, 64, 31);
contentPane.add(lblSrc);
JButton result = new JButton("\u7EDF\u8BA1\u884C\u6570");
result.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
String path = absolutePath.getText();
File file = new File(path);
try {
nums(file);
} catch (IOException e1) {
e1.printStackTrace();
}
JOptionPane
.showMessageDialog(contentPane, "代碼一共有:" + num + "行");
}
});
result.setFont(new Font("宋體", Font.PLAIN, 14));
result.setBounds(48, 100, 93, 37);
contentPane.add(result);
JButton exit = new JButton("\u9000\u51FA");
exit.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
System.exit(1);
}
});
exit.setFont(new Font("宋體", Font.PLAIN, 14));
exit.setBounds(270, 100, 93, 37);
contentPane.add(exit);
JButton view = new JButton("\u6D4F\u89C8");
view.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
JFileChooser jfc = new JFileChooser("c:\\");
jfc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
jfc.setDialogTitle("請選擇要統計的src文件夾");
int result = jfc.showOpenDialog(contentPane);
if (result == JFileChooser.APPROVE_OPTION) {
path = jfc.getSelectedFile().getAbsolutePath();
absolutePath.setText(path);
}
}
});
view.setBounds(277, 36, 81, 37);
contentPane.add(view);
}
/**
* 寫一個方法,用來計算代碼量
*
* @throws IOException
*/
private void nums(File file) throws IOException {
if (file.isDirectory()) {
File[] files = file.listFiles();
for (int i = 0; i < files.length; i++) {
File f = files[i];
nums(f);
}
} else {
BufferedReader br = new BufferedReader(new FileReader(file));
while (br.readLine() != null) {
num++;
}
br.close();
}
}
}以上就是分享一個統計代碼量的小程序的詳細內容,更多請關注php中文網其它相關文章! 小程序是一種不需要下載安裝即可使用的應用,它實現了應用“觸手可及”的夢想,用戶掃一掃或者搜一下即可打開應用。 |
溫馨提示:喜歡本站的話,請收藏一下本站!