From 5bf503496b7639dc0b4f3726515f146743b22cd2 Mon Sep 17 00:00:00 2001 From: 00fly Date: Tue, 5 Nov 2024 10:17:02 +0800 Subject: [PATCH] =?UTF-8?q?Java=E9=A1=B9=E7=9B=AE=E7=BC=96=E7=A0=81?= =?UTF-8?q?=E8=BD=AC=E6=8D=A2=E5=B7=A5=E5=85=B7=E5=8F=8A=E5=85=B6=E4=BB=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../README.md" | 12 + .../images/001.png" | Bin 0 -> 73886 bytes .../images/002.png" | Bin 0 -> 54086 bytes .../images/003.png" | Bin 0 -> 54973 bytes .../images/004.png" | Bin 0 -> 52143 bytes .../pom.xml" | 75 ++++ .../src/main/java/com/fly/code/ToolMain.java" | 204 ++++++++++ .../java/com/fly/code/panel/ClearPanel.java" | 300 ++++++++++++++ .../java/com/fly/code/panel/EncodePanel.java" | 365 ++++++++++++++++++ .../java/com/fly/code/panel/ToFtlPanel.java" | 298 ++++++++++++++ .../java/com/fly/code/panel/ToUnixPanel.java" | 236 +++++++++++ .../src/main/resources/icon.gif" | Bin 0 -> 1867 bytes .../src/main/resources/log4j.xml" | 117 ++++++ 13 files changed, 1607 insertions(+) create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/README.md" create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/images/001.png" create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/images/002.png" create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/images/003.png" create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/images/004.png" create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/pom.xml" create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/ToolMain.java" create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/ClearPanel.java" create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/EncodePanel.java" create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/ToFtlPanel.java" create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/ToUnixPanel.java" create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/resources/icon.gif" create mode 100644 "00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/resources/log4j.xml" diff --git "a/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/README.md" "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/README.md" new file mode 100644 index 0000000..6980940 --- /dev/null +++ "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/README.md" @@ -0,0 +1,12 @@ +# JavaEncodeTool +Java项目编码转换工具 + +![输入图片说明](images/001.png) + +![输入图片说明](images/002.png) + +![输入图片说明](images/003.png) + +![输入图片说明](images/004.png) + + \ No newline at end of file diff --git "a/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/images/001.png" "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/images/001.png" new file mode 100644 index 0000000000000000000000000000000000000000..7678d194205bbcbea02d21faa507238ee0a5226e GIT binary patch literal 73886 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

N33eo)%#NdtT_-T4_Q0~1 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 MrIttR^K0RM0sT^;s{jB1 literal 0 HcmV?d00001 diff --git "a/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/images/002.png" "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/images/002.png" new file mode 100644 index 0000000000000000000000000000000000000000..c3a77e5834cea4e46f0088fba7d1b50370337c95 GIT binary patch literal 54086 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 L{C=1H59)sa#}1#e literal 0 HcmV?d00001 diff --git "a/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/images/003.png" "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/images/003.png" new file mode 100644 index 0000000000000000000000000000000000000000..fa1c43cce1c1544b6369a8d8655fffafc7bedba3 GIT binary patch literal 54973 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 D)6*a-|#d3uW7&b_E8D(F8Z{yA9%N-eD=0o6A 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%0Arse2AHCFPG$9T@#pN#~ao-lD2H%--C270nI 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 UP=c8M$4hG|>+{zS_5LpWFY+?cjsO4v literal 0 HcmV?d00001 diff --git "a/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/pom.xml" "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/pom.xml" new file mode 100644 index 0000000..cb0e0b5 --- /dev/null +++ "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/pom.xml" @@ -0,0 +1,75 @@ + + + 4.0.0 + com.fly + java-encode-tool + 0.0.1 + java-encode-tool + http://maven.apache.org + jar + + + UTF-8 + UTF-8 + 1.8 + + + + + log4j + log4j + 1.2.17 + + + + commons-io + commons-io + 2.4 + + + org.apache.commons + commons-lang3 + 3.5 + + + + ${project.artifactId} + + + maven-compiler-plugin + 3.7.0 + + 1.8 + 1.8 + + + + maven-assembly-plugin + 3.5.0 + + false + + + com.fly.code.ToolMain + + + + + jar-with-dependencies + + + + + make-assembly + package + + single + + + + + + + diff --git "a/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/ToolMain.java" "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/ToolMain.java" new file mode 100644 index 0000000..4f80f9f --- /dev/null +++ "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/ToolMain.java" @@ -0,0 +1,204 @@ +package com.fly.code; + +import java.awt.BorderLayout; +import java.awt.Dimension; +import java.awt.Image; +import java.net.URL; + +import javax.swing.JCheckBoxMenuItem; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTabbedPane; +import javax.swing.SwingUtilities; +import javax.swing.UIManager; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ChangeListener; + +import com.fly.code.panel.ClearPanel; +import com.fly.code.panel.EncodePanel; +import com.fly.code.panel.ToFtlPanel; +import com.fly.code.panel.ToUnixPanel; + +/** + * + * 项目编码,空行清除工具 + * + * @author 00fly + * @version [版本号, 2018年8月29日] + * @see [相关类/方法] + * @since [产品/模块版本] + */ +public class ToolMain extends JFrame +{ + private static final long serialVersionUID = 965289280779529771L; + + // 设置窗口风格的菜单 + JCheckBoxMenuItem windows = new JCheckBoxMenuItem("Windows", true); + + JCheckBoxMenuItem metal = new JCheckBoxMenuItem("Metal"); + + // 构造 + public ToolMain() + { + // 加载图标 + URL imgURL = this.getClass().getResource("/icon.gif"); + if (imgURL != null) + { + Image image = getToolkit().createImage(imgURL); + setIconImage(image); + } + setTitle("Java项目工具 V1.0"); + // 设置宽高 + setSize(560, 600); + // 得到当前系统screenSize + Dimension screenSize = getToolkit().getScreenSize(); + // 得到当前frameSize + Dimension frameSize = this.getSize(); + // 自适应处理 + frameSize.height = Math.min(screenSize.height, frameSize.height); + frameSize.width = Math.min(screenSize.width, frameSize.width); + + setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2); + addMenu(); + add(new TabPanel()); + setWindowStyle("com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); + setResizable(false); + setVisible(true); + setDefaultCloseOperation(EXIT_ON_CLOSE); + } + + // Menu set + private void addMenu() + { + JMenuBar mb = new JMenuBar(); + JMenu windowStyle = new JMenu("窗口风格"); + windows.addActionListener((actionevent) -> { + String plaf = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel"; + setWindowStyle(plaf); + windows.setState(true); + metal.setState(false); + }); + + metal.addActionListener((actionevent) -> { + String plaf = "javax.swing.plaf.metal.MetalLookAndFeel"; + setWindowStyle(plaf); + windows.setState(false); + metal.setState(true); + }); + JMenuItem exit = new JMenuItem("退出"); + exit.addActionListener(event -> System.exit(0)); + + windowStyle.add(windows); + windowStyle.add(metal); + windowStyle.addSeparator(); + windowStyle.add(exit); + mb.add(windowStyle); + + // 菜单2 + JMenu help = new JMenu("帮助"); + JMenuItem use = new JMenuItem("使用指南"); + use.addActionListener(event -> JOptionPane.showMessageDialog(null, "请按以下顺序操作:\n 1. 选择项目源代码目录。\n 2. 选择编码转换后保存目录。\n 3. 选择需要转换的文件类型。\n 4. 选择项目编码。\n 5. 开始转换。", "使用指南", JOptionPane.INFORMATION_MESSAGE)); + + JMenuItem about = new JMenuItem("关于工具"); + about.addActionListener(event -> JOptionPane.showMessageDialog(null, "Java项目编码转换工具,00fly 于2014年11月。", "关于本工具", JOptionPane.INFORMATION_MESSAGE)); + help.add(use); + help.addSeparator(); + help.add(about); + mb.add(help); + setJMenuBar(mb); + } + + // 根据字串设置窗口外观 + private void setWindowStyle(String plaf) + { + try + { + // 设定用户界面的外观 + UIManager.setLookAndFeel(plaf); + // 将用户界面改成当前设定的外观 + SwingUtilities.updateComponentTreeUI(this); + } + catch (Exception e) + { + } + } + + // 卡片 + class TabPanel extends JPanel implements ChangeListener + { + private static final long serialVersionUID = 7226393795721621635L; + + JTabbedPane jtp = new JTabbedPane(); + + EncodePanel encodePanel = new EncodePanel(); + + ClearPanel clearPanel = new ClearPanel(); + + ToFtlPanel toFtlPanel = new ToFtlPanel(); + + ToUnixPanel toUnixPanel = new ToUnixPanel(); + + TabPanel() + { + encodePanel.setVisible(true); + clearPanel.setVisible(true); + toFtlPanel.setVisible(true); + toUnixPanel.setVisible(true); + jtp.addTab(" 编码转换 ", encodePanel); + jtp.addTab(" 清除空白行 ", clearPanel); + jtp.addTab(" 转换为FTL ", toFtlPanel); + jtp.addTab(" 转换为unix换行符", toUnixPanel); + jtp.addChangeListener(this); + setLayout(new BorderLayout()); + add(jtp, BorderLayout.CENTER); + } + + @Override + public void stateChanged(ChangeEvent e) + { + if (e.getSource() == jtp) + { + int i = ((JTabbedPane)e.getSource()).getSelectedIndex(); + if (i == 0) + { + encodePanel.setVisible(true); + clearPanel.setVisible(false); + toFtlPanel.setVisible(false); + toUnixPanel.setVisible(false); + } + else if (i == 1) + { + encodePanel.setVisible(false); + clearPanel.setVisible(true); + toFtlPanel.setVisible(false); + toUnixPanel.setVisible(false); + } + else if (i == 2) + { + encodePanel.setVisible(false); + clearPanel.setVisible(false); + toFtlPanel.setVisible(true); + toUnixPanel.setVisible(false); + } + else + { + encodePanel.setVisible(false); + clearPanel.setVisible(false); + toFtlPanel.setVisible(false); + toUnixPanel.setVisible(true); + } + } + } + } + + public static void main(String[] args) + { + SwingUtilities.invokeLater(() -> { + new ToolMain(); + }); + } +} diff --git "a/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/ClearPanel.java" "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/ClearPanel.java" new file mode 100644 index 0000000..a68d698 --- /dev/null +++ "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/ClearPanel.java" @@ -0,0 +1,300 @@ +package com.fly.code.panel; + +import java.awt.Color; +import java.awt.Cursor; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JFileChooser; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextArea; +import javax.swing.JTextField; +import javax.swing.SwingUtilities; + +import org.apache.commons.io.FileUtils; +import org.apache.commons.io.filefilter.DirectoryFileFilter; +import org.apache.commons.io.filefilter.FileFilterUtils; + +/** + * + * 移除空白行 + * + * @author 00fly + * @version [版本号, 2018年10月1日] + * @see [相关类/方法] + * @since [产品/模块版本] + */ +public class ClearPanel extends JPanel +{ + private static final long serialVersionUID = 4050369107824321460L; + + // 界面组件 + JLabel sourceLabel = new JLabel("项目源代码目录:"); + + JTextField tsourcePath = new JTextField(null, 45); + + JButton sourceBrowse = new JButton("选择"); + + JButton bakBrowse = new JButton("选择"); + + JLabel fileTypeLabel = new JLabel("转换文件类型:"); + + JCheckBox jb1 = new JCheckBox(".java", true); + + JCheckBox jb2 = new JCheckBox(".jsp"); + + JCheckBox jb3 = new JCheckBox(".xml"); + + JCheckBox jb4 = new JCheckBox(".css"); + + JCheckBox jb5 = new JCheckBox(".js"); + + JCheckBox jb6 = new JCheckBox(".properties"); + + JCheckBox jb7 = new JCheckBox(".sql"); + + JCheckBox jb8 = new JCheckBox(".htm"); + + JCheckBox jb9 = new JCheckBox(".html"); + + JCheckBox jb10 = new JCheckBox(".vm"); + + JButton runButton = new JButton("开 始 处 理"); + + JTextArea view = new JTextArea(); + + public ClearPanel() + { + super(); + setLayout(null); + setBackground(Color.WHITE); + // 项目源文件路径 + sourceLabel.setBounds(20, 10, 120, 18); + add(sourceLabel); + tsourcePath.setFocusable(false); + tsourcePath.setBounds(120, 10, 300, 20); + add(tsourcePath); + sourceBrowse.setBounds(430, 10, 70, 20); + + sourceBrowse.addActionListener(event -> { + String text = tsourcePath.getText(); + if (text.length() == 0) + { + text = new File(" ").getAbsolutePath().trim(); + } + JFileChooser fc = new JFileChooser(text); + fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); + fc.setVisible(true); + if (fc.showOpenDialog(null) == 1) + { + return; + } + File f = fc.getSelectedFile(); + if (f.getPath().endsWith("\\")) + { + tsourcePath.setText(f.getAbsolutePath()); + } + else + { + tsourcePath.setText(f.getAbsolutePath() + "\\"); + } + }); + add(sourceBrowse); + + // 文件类型 + fileTypeLabel.setBounds(20, 80, 120, 18); + add(fileTypeLabel); + + jb1.setBounds(100, 80, 100, 18); + jb1.setBackground(Color.WHITE); + jb2.setBounds(200, 80, 80, 18); + jb2.setBackground(Color.WHITE); + jb3.setBounds(280, 80, 80, 18); + jb3.setBackground(Color.WHITE); + jb4.setBounds(360, 80, 80, 18); + jb4.setBackground(Color.WHITE); + jb5.setBounds(440, 80, 80, 18); + jb5.setBackground(Color.WHITE); + + jb6.setBounds(100, 100, 100, 18); + jb6.setBackground(Color.WHITE); + jb7.setBounds(200, 100, 80, 18); + jb7.setBackground(Color.WHITE); + jb8.setBounds(280, 100, 80, 18); + jb8.setBackground(Color.WHITE); + jb9.setBounds(360, 100, 80, 18); + jb9.setBackground(Color.WHITE); + jb10.setBounds(440, 100, 80, 18); + jb10.setBackground(Color.WHITE); + add(jb1); + add(jb2); + add(jb3); + add(jb4); + add(jb5); + add(jb6); + add(jb7); + add(jb8); + add(jb9); + add(jb10); + + runButton.setBounds(360, 130, 120, 25); + runButton.addActionListener(event -> { + final String sourcePath = tsourcePath.getText(); + if ("".equals(sourcePath)) + { + JOptionPane.showMessageDialog(null, "项目源代码目录不可为空!", "警告", JOptionPane.WARNING_MESSAGE); + return; + } + + final List suffixList = new ArrayList<>(); + if (jb1.isSelected()) + { + suffixList.add("java"); + } + if (jb2.isSelected()) + { + suffixList.add("jsp"); + } + if (jb3.isSelected()) + { + suffixList.add("xml"); + } + if (jb4.isSelected()) + { + suffixList.add("css"); + } + if (jb5.isSelected()) + { + suffixList.add("js"); + } + if (jb6.isSelected()) + { + suffixList.add("properties"); + } + if (jb7.isSelected()) + { + suffixList.add("sql"); + } + if (jb8.isSelected()) + { + suffixList.add("htm"); + } + if (jb9.isSelected()) + { + suffixList.add("html"); + } + if (jb10.isSelected()) + { + suffixList.add("vm"); + } + if (suffixList.isEmpty()) + { + JOptionPane.showMessageDialog(null, "请选择转换文件类型!", "警告", JOptionPane.WARNING_MESSAGE); + return; + } + try + { + view.setText(null); + runButton.setText("处理中。。。"); + runButton.setEnabled(false); + Thread worker = new Thread() + { + @Override + public void run() + { + String path = sourcePath; + for (String suffix : suffixList) + { + Collection listFiles = FileUtils.listFiles(new File(path), FileFilterUtils.suffixFileFilter(suffix), DirectoryFileFilter.INSTANCE); + for (Object object : listFiles) + { + if (object instanceof File) + { + File file = (File)object; + try + { + String content = FileUtils.readFileToString(file, StandardCharsets.UTF_8); + + // 去除空白行 + content = content.replaceAll("((\r\n)|\n)[\\s\t ]*(\\1)+", "$1"); + // .replaceAll("\\d{4}年\\d{1,2}月\\d{1,2}日", "2018-09-10") + FileUtils.writeStringToFile(file, content, StandardCharsets.UTF_8); + view.setText(file.getAbsolutePath() + " 处理完成 \n" + view.getText()); + } + catch (IOException e) + { + view.setText(file.getAbsolutePath() + "------ 处理失败 ---- \n" + view.getText()); + } + } + } + } + SwingUtilities.invokeLater(() -> { + runButton.setText("开 始 处 理"); + runButton.setEnabled(true); + if (JOptionPane.showConfirmDialog(null, "处理完成,是否查看?", "查看项目代码", 0) == 0) + { + try + { + java.awt.Desktop.getDesktop().open(new File(sourcePath)); + } + catch (IOException e) + { + } + } + }); + } + }; + worker.start(); + } + catch (Exception e) + { + JOptionPane.showMessageDialog(null, "Java项目代码处理失败!", "错误", JOptionPane.ERROR_MESSAGE); + } + }); + add(runButton); + + JScrollPane scrollPane = new JScrollPane(); + scrollPane.setBounds(10, 170, 526, 320); + add(scrollPane); + + view.setEditable(false); + scrollPane.setViewportView(view); + + JLabel label = new JLabel(); + label.setText("Java项目编码转换工具 By 00fly"); + label.setBounds(348, 500, 200, 18); + add(label); + + JLabel httpLabel = new JLabel(); + httpLabel.setText("http://00fly.online"); + httpLabel.setToolTipText("单击直达主页~~"); + httpLabel.setCursor(new Cursor(Cursor.HAND_CURSOR)); + httpLabel.addMouseListener(new MouseAdapter() + { + @Override + public void mouseClicked(MouseEvent e) + { + try + { + Runtime.getRuntime().exec("cmd.exe /c start http://00fly.online"); + } + catch (Exception ex) + { + } + } + }); + httpLabel.setBounds(10, 500, 146, 18); + add(httpLabel); + } +} \ No newline at end of file diff --git "a/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/EncodePanel.java" "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/EncodePanel.java" new file mode 100644 index 0000000..c06d4a7 --- /dev/null +++ "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/EncodePanel.java" @@ -0,0 +1,365 @@ +package com.fly.code.panel; + +import java.awt.Color; +import java.awt.Cursor; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JComboBox; +import javax.swing.JFileChooser; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextArea; +import javax.swing.JTextField; +import javax.swing.SwingUtilities; + +import org.apache.commons.io.FileUtils; + +/** + * + * 编码转换 + * + * @author 00fly + * @version [版本号, 2018年10月1日] + * @see [相关类/方法] + * @since [产品/模块版本] + */ +public class EncodePanel extends JPanel +{ + private static final long serialVersionUID = 4050369107824321460L; + + // 界面组件 + JLabel sourceLabel = new JLabel("项目源代码目录:"); + + JTextField tsourcePath = new JTextField(null, 45); + + JButton sourceBrowse = new JButton("选择"); + + JLabel bakeLabel = new JLabel("转换后保存目录:"); + + JTextField tbakPath = new JTextField(null, 45); + + JButton bakBrowse = new JButton("选择"); + + JLabel fileTypeLabel = new JLabel("转换文件类型:"); + + JCheckBox jb1 = new JCheckBox(".java", true); + + JCheckBox jb2 = new JCheckBox(".jsp", true); + + JCheckBox jb3 = new JCheckBox(".xml", true); + + JCheckBox jb4 = new JCheckBox(".css", true); + + JCheckBox jb5 = new JCheckBox(".js", true); + + JCheckBox jb6 = new JCheckBox(".properties"); + + JCheckBox jb7 = new JCheckBox(".sql"); + + JCheckBox jb8 = new JCheckBox(".htm"); + + JCheckBox jb9 = new JCheckBox(".html"); + + JCheckBox jb10 = new JCheckBox(".vm"); + + JLabel encodeLabel = new JLabel("将项目编码: 从"); + + JComboBox oldEncode = new JComboBox<>(); + + JLabel newLabel = new JLabel("转换到"); + + JComboBox newEncode = new JComboBox<>(); + + JButton runButton = new JButton("开 始 转 换"); + + JTextArea view = new JTextArea(); + + public EncodePanel() + { + super(); + setLayout(null); + setBackground(Color.WHITE); + // 项目源文件路径 + sourceLabel.setBounds(20, 10, 120, 18); + add(sourceLabel); + tsourcePath.setFocusable(false); + tsourcePath.setBounds(120, 10, 300, 20); + add(tsourcePath); + sourceBrowse.setBounds(430, 10, 70, 20); + + sourceBrowse.addActionListener(event -> { + String text = tsourcePath.getText(); + if (text.length() == 0) + { + text = new File(" ").getAbsolutePath().trim(); + } + JFileChooser fc = new JFileChooser(text); + fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); + fc.setVisible(true); + if (fc.showOpenDialog(null) == 1) + { + return; + } + File f = fc.getSelectedFile(); + if (f.getPath().endsWith("\\")) + { + tsourcePath.setText(f.getAbsolutePath()); + } + else + { + tsourcePath.setText(f.getAbsolutePath() + "\\"); + } + }); + add(sourceBrowse); + + // 备份目录 + bakeLabel.setBounds(20, 45, 120, 18); + add(bakeLabel); + tbakPath.setBounds(120, 45, 300, 20); + tbakPath.setFocusable(false); + tbakPath.setText(new File(" ").getAbsolutePath().trim()); + add(tbakPath); + bakBrowse.setBounds(430, 45, 70, 20); + bakBrowse.addActionListener(event -> { + String text = tbakPath.getText(); + if (text.length() == 0) + { + text = new File(" ").getAbsolutePath().trim(); + } + JFileChooser fc = new JFileChooser(text); + fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); + fc.setVisible(true); + if (fc.showOpenDialog(null) == 1) + { + return; + } + File f = fc.getSelectedFile(); + if (f.getPath().endsWith("\\")) + { + tbakPath.setText(f.getAbsolutePath()); + } + else + { + tbakPath.setText(f.getAbsolutePath() + "\\"); + } + }); + add(bakBrowse); + + // 文件类型 + fileTypeLabel.setBounds(20, 80, 120, 18); + add(fileTypeLabel); + + jb1.setBounds(100, 80, 100, 18); + jb1.setBackground(Color.WHITE); + jb2.setBounds(200, 80, 80, 18); + jb2.setBackground(Color.WHITE); + jb3.setBounds(280, 80, 80, 18); + jb3.setBackground(Color.WHITE); + jb4.setBounds(360, 80, 80, 18); + jb4.setBackground(Color.WHITE); + jb5.setBounds(440, 80, 80, 18); + jb5.setBackground(Color.WHITE); + + jb6.setBounds(100, 100, 100, 18); + jb6.setBackground(Color.WHITE); + jb7.setBounds(200, 100, 80, 18); + jb7.setBackground(Color.WHITE); + jb8.setBounds(280, 100, 80, 18); + jb8.setBackground(Color.WHITE); + jb9.setBounds(360, 100, 80, 18); + jb9.setBackground(Color.WHITE); + jb10.setBounds(440, 100, 80, 18); + jb10.setBackground(Color.WHITE); + add(jb1); + add(jb2); + add(jb3); + add(jb4); + add(jb5); + add(jb6); + add(jb7); + add(jb8); + add(jb9); + add(jb10); + + // 项目编码 + encodeLabel.setBounds(20, 130, 120, 18); + add(encodeLabel); + oldEncode.setBounds(120, 130, 70, 20); + oldEncode.addItem("UTF-8"); + oldEncode.addItem("GB2312"); + oldEncode.addItem("GBK"); + add(oldEncode); + + newLabel.setBounds(200, 130, 120, 18); + add(newLabel); + newEncode.setBounds(250, 130, 70, 20); + newEncode.addItem("UTF-8"); + newEncode.addItem("GB2312"); + newEncode.addItem("GBK"); + newEncode.setSelectedIndex(2); + add(newEncode); + + runButton.setBounds(360, 130, 120, 25); + runButton.addActionListener(event -> { + final String sourcePath = tsourcePath.getText(); + if ("".equals(sourcePath)) + { + JOptionPane.showMessageDialog(null, "项目源代码目录不可为空!", "警告", JOptionPane.WARNING_MESSAGE); + return; + } + + final String bakPath = tbakPath.getText(); + if ("".equals(bakPath)) + { + JOptionPane.showMessageDialog(null, "转换后保存目录不可为空!", "警告", JOptionPane.WARNING_MESSAGE); + return; + } + + final List list = new ArrayList<>(); + if (jb1.isSelected()) + { + list.add("java"); + } + if (jb2.isSelected()) + { + list.add("jsp"); + } + if (jb3.isSelected()) + { + list.add("xml"); + } + if (jb4.isSelected()) + { + list.add("css"); + } + if (jb5.isSelected()) + { + list.add("js"); + } + if (jb6.isSelected()) + { + list.add("properties"); + } + if (jb7.isSelected()) + { + list.add("sql"); + } + if (jb8.isSelected()) + { + list.add("htm"); + } + if (jb9.isSelected()) + { + list.add("html"); + } + if (jb10.isSelected()) + { + list.add("vm"); + } + if (list.isEmpty()) + { + JOptionPane.showMessageDialog(null, "请选择转换文件类型!", "警告", JOptionPane.WARNING_MESSAGE); + return; + } + final String oldE = (String)oldEncode.getSelectedItem(); + final String newE = (String)newEncode.getSelectedItem(); + if (oldE.equals(newE)) + { + JOptionPane.showMessageDialog(null, "请选择不同的编码!", "警告", JOptionPane.WARNING_MESSAGE); + return; + } + try + { + view.setText(null); + runButton.setText("转换中。。。"); + runButton.setEnabled(false); + Thread worker = new Thread() + { + @Override + public void run() + { + Collection files = FileUtils.listFiles(new File(sourcePath), (String[])list.toArray(new String[0]), true); + String dirName = new File(sourcePath).getName(); + String newPath = bakPath + dirName + "\\"; + for (File file : files) + { + String srcFilePath = newPath + file.getAbsolutePath().substring(sourcePath.length()); + try + { + FileUtils.writeLines(new File(srcFilePath), newE, FileUtils.readLines(file, oldE)); + } + catch (IOException e) + { + view.setText(file.getAbsolutePath() + "------ 转换失败 ---- \n" + view.getText()); + } + view.setText(file.getAbsolutePath() + " 转换完成 \n" + view.getText()); + } + SwingUtilities.invokeLater(() -> { + runButton.setText("开 始 转 换"); + runButton.setEnabled(true); + if (JOptionPane.showConfirmDialog(null, "处理完成,是否直接查看生成的代码?", "查看项目代码", 0) == 0) + { + try + { + java.awt.Desktop.getDesktop().open(new File(bakPath)); + } + catch (IOException e) + { + } + } + }); + } + }; + worker.start(); + } + catch (Exception e) + { + JOptionPane.showMessageDialog(null, "Java项目编码转换失败!", "错误", JOptionPane.ERROR_MESSAGE); + } + }); + add(runButton); + + JScrollPane scrollPane = new JScrollPane(); + scrollPane.setBounds(10, 170, 526, 320); + add(scrollPane); + + view.setEditable(false); + scrollPane.setViewportView(view); + + JLabel label = new JLabel(); + label.setText("Java项目编码转换工具 By 00fly"); + label.setBounds(348, 500, 200, 18); + add(label); + + JLabel httpLabel = new JLabel(); + httpLabel.setText("http://00fly.online"); + httpLabel.setToolTipText("单击直达主页~~"); + httpLabel.setCursor(new Cursor(Cursor.HAND_CURSOR)); + httpLabel.addMouseListener(new MouseAdapter() + { + @Override + public void mouseClicked(MouseEvent e) + { + try + { + Runtime.getRuntime().exec("cmd.exe /c start http://00fly.online"); + } + catch (Exception ex) + { + } + } + }); + httpLabel.setBounds(10, 500, 146, 18); + add(httpLabel); + } +} \ No newline at end of file diff --git "a/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/ToFtlPanel.java" "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/ToFtlPanel.java" new file mode 100644 index 0000000..7d66247 --- /dev/null +++ "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/ToFtlPanel.java" @@ -0,0 +1,298 @@ +package com.fly.code.panel; + +import java.awt.Color; +import java.awt.Cursor; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JFileChooser; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextArea; +import javax.swing.JTextField; +import javax.swing.SwingUtilities; + +import org.apache.commons.io.FileUtils; +import org.apache.commons.io.filefilter.DirectoryFileFilter; +import org.apache.commons.io.filefilter.FileFilterUtils; + +/** + * + * 转换为FTL文件 + * + * @author 00fly + * @version [版本号, 2018年10月1日] + * @see [相关类/方法] + * @since [产品/模块版本] + */ +public class ToFtlPanel extends JPanel +{ + private static final long serialVersionUID = 4050369107824321460L; + + // 界面组件 + JLabel sourceLabel = new JLabel("项目源代码目录:"); + + JTextField tsourcePath = new JTextField(null, 45); + + JButton sourceBrowse = new JButton("选择"); + + JButton bakBrowse = new JButton("选择"); + + JLabel fileTypeLabel = new JLabel("转换文件类型:"); + + JCheckBox jb1 = new JCheckBox(".java", true); + + JCheckBox jb2 = new JCheckBox(".jsp", true); + + JCheckBox jb3 = new JCheckBox(".xml", true); + + JCheckBox jb4 = new JCheckBox(".css"); + + JCheckBox jb5 = new JCheckBox(".js"); + + JCheckBox jb6 = new JCheckBox(".properties", true); + + JCheckBox jb7 = new JCheckBox(".sql"); + + JCheckBox jb8 = new JCheckBox(".htm"); + + JCheckBox jb9 = new JCheckBox(".html"); + + JCheckBox jb10 = new JCheckBox(".vm"); + + JButton runButton = new JButton("开 始 处 理"); + + JTextArea view = new JTextArea(); + + public ToFtlPanel() + { + super(); + setLayout(null); + setBackground(Color.WHITE); + // 项目源文件路径 + sourceLabel.setBounds(20, 10, 120, 18); + add(sourceLabel); + tsourcePath.setFocusable(false); + tsourcePath.setBounds(120, 10, 300, 20); + add(tsourcePath); + sourceBrowse.setBounds(430, 10, 70, 20); + + sourceBrowse.addActionListener(event -> { + String text = tsourcePath.getText(); + if (text.length() == 0) + { + text = new File(" ").getAbsolutePath().trim(); + } + JFileChooser fc = new JFileChooser(text); + fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); + fc.setVisible(true); + if (fc.showOpenDialog(null) == 1) + { + return; + } + File f = fc.getSelectedFile(); + if (f.getPath().endsWith("\\")) + { + tsourcePath.setText(f.getAbsolutePath()); + } + else + { + tsourcePath.setText(f.getAbsolutePath() + "\\"); + } + }); + add(sourceBrowse); + + // 文件类型 + fileTypeLabel.setBounds(20, 80, 120, 18); + add(fileTypeLabel); + + jb1.setBounds(100, 80, 100, 18); + jb1.setBackground(Color.WHITE); + jb2.setBounds(200, 80, 80, 18); + jb2.setBackground(Color.WHITE); + jb3.setBounds(280, 80, 80, 18); + jb3.setBackground(Color.WHITE); + jb4.setBounds(360, 80, 80, 18); + jb4.setBackground(Color.WHITE); + jb5.setBounds(440, 80, 80, 18); + jb5.setBackground(Color.WHITE); + + jb6.setBounds(100, 100, 100, 18); + jb6.setBackground(Color.WHITE); + jb7.setBounds(200, 100, 80, 18); + jb7.setBackground(Color.WHITE); + jb8.setBounds(280, 100, 80, 18); + jb8.setBackground(Color.WHITE); + jb9.setBounds(360, 100, 80, 18); + jb9.setBackground(Color.WHITE); + jb10.setBounds(440, 100, 80, 18); + jb10.setBackground(Color.WHITE); + add(jb1); + add(jb2); + add(jb3); + add(jb4); + add(jb5); + add(jb6); + add(jb7); + add(jb8); + add(jb9); + add(jb10); + + runButton.setBounds(360, 130, 120, 25); + runButton.addActionListener(event -> { + final String sourcePath = tsourcePath.getText(); + if ("".equals(sourcePath)) + { + JOptionPane.showMessageDialog(null, "项目源代码目录不可为空!", "警告", JOptionPane.WARNING_MESSAGE); + return; + } + + final List suffixList = new ArrayList<>(); + if (jb1.isSelected()) + { + suffixList.add("java"); + } + if (jb2.isSelected()) + { + suffixList.add("jsp"); + } + if (jb3.isSelected()) + { + suffixList.add("xml"); + } + if (jb4.isSelected()) + { + suffixList.add("css"); + } + if (jb5.isSelected()) + { + suffixList.add("js"); + } + if (jb6.isSelected()) + { + suffixList.add("properties"); + } + if (jb7.isSelected()) + { + suffixList.add("sql"); + } + if (jb8.isSelected()) + { + suffixList.add("htm"); + } + if (jb9.isSelected()) + { + suffixList.add("html"); + } + if (jb10.isSelected()) + { + suffixList.add("vm"); + } + if (suffixList.isEmpty()) + { + JOptionPane.showMessageDialog(null, "请选择转换文件类型!", "警告", JOptionPane.WARNING_MESSAGE); + return; + } + try + { + view.setText(null); + runButton.setText("处理中。。。"); + runButton.setEnabled(false); + Thread worker = new Thread() + { + @Override + public void run() + { + String path = sourcePath; + for (String suffix : suffixList) + { + Collection listFiles = FileUtils.listFiles(new File(path), FileFilterUtils.suffixFileFilter(suffix), DirectoryFileFilter.INSTANCE); + for (Object object : listFiles) + { + if (object instanceof File) + { + File file = (File)object; + try + { + String content = FileUtils.readFileToString(file, StandardCharsets.UTF_8); + content = content.replace("${", "$\\{"); + File newFile = new File(file.getAbsolutePath() + ".ftl"); + FileUtils.writeStringToFile(newFile, content, StandardCharsets.UTF_8); + view.setText(file.getAbsolutePath() + " 处理完成 \n" + view.getText()); + } + catch (IOException e) + { + view.setText(file.getAbsolutePath() + "------ 处理失败 ---- \n" + view.getText()); + } + } + } + } + SwingUtilities.invokeLater(() -> { + runButton.setText("开 始 处 理"); + runButton.setEnabled(true); + if (JOptionPane.showConfirmDialog(null, "处理完成,是否查看?", "查看项目代码", 0) == 0) + { + try + { + java.awt.Desktop.getDesktop().open(new File(sourcePath)); + } + catch (IOException e) + { + } + } + }); + } + }; + worker.start(); + } + catch (Exception e) + { + JOptionPane.showMessageDialog(null, "Java项目代码处理失败!", "错误", JOptionPane.ERROR_MESSAGE); + } + }); + add(runButton); + + JScrollPane scrollPane = new JScrollPane(); + scrollPane.setBounds(10, 170, 526, 320); + add(scrollPane); + + view.setEditable(false); + scrollPane.setViewportView(view); + + JLabel label = new JLabel(); + label.setText("Java项目编码转换工具 By 00fly"); + label.setBounds(348, 500, 200, 18); + add(label); + + JLabel httpLabel = new JLabel(); + httpLabel.setText("http://00fly.online"); + httpLabel.setToolTipText("单击直达主页~~"); + httpLabel.setCursor(new Cursor(Cursor.HAND_CURSOR)); + httpLabel.addMouseListener(new MouseAdapter() + { + @Override + public void mouseClicked(MouseEvent e) + { + try + { + Runtime.getRuntime().exec("cmd.exe /c start http://00fly.online"); + } + catch (Exception ex) + { + } + } + }); + httpLabel.setBounds(10, 500, 146, 18); + add(httpLabel); + } +} \ No newline at end of file diff --git "a/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/ToUnixPanel.java" "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/ToUnixPanel.java" new file mode 100644 index 0000000..9d388c6 --- /dev/null +++ "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/java/com/fly/code/panel/ToUnixPanel.java" @@ -0,0 +1,236 @@ +package com.fly.code.panel; + +import java.awt.Color; +import java.awt.Cursor; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JFileChooser; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextArea; +import javax.swing.JTextField; +import javax.swing.SwingUtilities; + +import org.apache.commons.io.FileUtils; +import org.apache.commons.io.filefilter.DirectoryFileFilter; +import org.apache.commons.io.filefilter.FileFilterUtils; +import org.apache.commons.lang3.StringUtils; + +/** + * + * 转换为unix换行符 + * + * @author 00fly + * @version [版本号, 2022年4月1日] + * @see [相关类/方法] + * @since [产品/模块版本] + */ +public class ToUnixPanel extends JPanel +{ + private static final long serialVersionUID = 4050369107824321460L; + + // 界面组件 + JLabel sourceLabel = new JLabel("项目源代码目录:"); + + JTextField tsourcePath = new JTextField(null, 45); + + JButton sourceBrowse = new JButton("选择"); + + JButton bakBrowse = new JButton("选择"); + + JLabel fileTypeLabel = new JLabel("转换文件类型:"); + + JCheckBox sh = new JCheckBox(".sh", true); + + JCheckBox yml = new JCheckBox(".yml", true); + + JCheckBox yaml = new JCheckBox(".yaml", true); + + JButton runButton = new JButton("开 始 处 理"); + + JTextArea view = new JTextArea(); + + public ToUnixPanel() + { + super(); + setLayout(null); + setBackground(Color.WHITE); + // 项目源文件路径 + sourceLabel.setBounds(20, 10, 120, 18); + add(sourceLabel); + tsourcePath.setFocusable(false); + tsourcePath.setBounds(120, 10, 300, 20); + add(tsourcePath); + sourceBrowse.setBounds(430, 10, 70, 20); + + sourceBrowse.addActionListener(event -> { + String text = tsourcePath.getText(); + if (text.length() == 0) + { + text = new File(" ").getAbsolutePath().trim(); + } + JFileChooser fc = new JFileChooser(text); + fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); + fc.setVisible(true); + if (fc.showOpenDialog(null) == 1) + { + return; + } + File f = fc.getSelectedFile(); + if (f.getPath().endsWith("\\")) + { + tsourcePath.setText(f.getAbsolutePath()); + } + else + { + tsourcePath.setText(f.getAbsolutePath() + "\\"); + } + }); + add(sourceBrowse); + + // 文件类型 + fileTypeLabel.setBounds(20, 80, 120, 18); + add(fileTypeLabel); + + sh.setBounds(100, 80, 100, 18); + sh.setBackground(Color.WHITE); + yml.setBounds(200, 80, 80, 18); + yml.setBackground(Color.WHITE); + yaml.setBounds(280, 80, 80, 18); + yaml.setBackground(Color.WHITE); + add(sh); + add(yml); + add(yaml); + + runButton.setBounds(360, 130, 120, 25); + runButton.addActionListener(event -> { + final String sourcePath = tsourcePath.getText(); + if ("".equals(sourcePath)) + { + JOptionPane.showMessageDialog(null, "项目源代码目录不可为空!", "警告", JOptionPane.WARNING_MESSAGE); + return; + } + + final List suffixList = new ArrayList<>(); + if (sh.isSelected()) + { + suffixList.add("sh"); + } + if (yml.isSelected()) + { + suffixList.add("yml"); + } + if (yaml.isSelected()) + { + suffixList.add("yaml"); + } + if (suffixList.isEmpty()) + { + JOptionPane.showMessageDialog(null, "请选择转换文件类型!", "警告", JOptionPane.WARNING_MESSAGE); + return; + } + try + { + view.setText(null); + runButton.setText("处理中。。。"); + runButton.setEnabled(false); + Thread worker = new Thread() + { + @Override + public void run() + { + String path = sourcePath; + for (String suffix : suffixList) + { + Collection listFiles = FileUtils.listFiles(new File(path), FileFilterUtils.suffixFileFilter(suffix), DirectoryFileFilter.INSTANCE); + for (Object object : listFiles) + { + if (object instanceof File) + { + File file = (File)object; + try + { + String content = FileUtils.readFileToString(file, StandardCharsets.UTF_8); + content = StringUtils.trimToEmpty(content); + // dos2unix + content = content.replaceAll("\\r", ""); + FileUtils.writeStringToFile(file, content, StandardCharsets.UTF_8); + view.setText(file.getAbsolutePath() + " 处理完成 \n" + view.getText()); + } + catch (IOException e) + { + view.setText(file.getAbsolutePath() + "------ 处理失败 ---- \n" + view.getText()); + } + } + } + } + SwingUtilities.invokeLater(() -> { + runButton.setText("开 始 处 理"); + runButton.setEnabled(true); + if (JOptionPane.showConfirmDialog(null, "处理完成,是否查看?", "查看项目代码", 0) == 0) + { + try + { + java.awt.Desktop.getDesktop().open(new File(sourcePath)); + } + catch (IOException e) + { + } + } + }); + } + }; + worker.start(); + } + catch (Exception e) + { + JOptionPane.showMessageDialog(null, "Java项目代码处理失败!", "错误", JOptionPane.ERROR_MESSAGE); + } + }); + add(runButton); + + JScrollPane scrollPane = new JScrollPane(); + scrollPane.setBounds(10, 170, 526, 320); + add(scrollPane); + + view.setEditable(false); + scrollPane.setViewportView(view); + + JLabel label = new JLabel(); + label.setText("Java项目编码转换工具 By 00fly"); + label.setBounds(348, 500, 200, 18); + add(label); + + JLabel httpLabel = new JLabel(); + httpLabel.setText("http://00fly.online"); + httpLabel.setToolTipText("单击直达主页~~"); + httpLabel.setCursor(new Cursor(Cursor.HAND_CURSOR)); + httpLabel.addMouseListener(new MouseAdapter() + { + @Override + public void mouseClicked(MouseEvent e) + { + try + { + Runtime.getRuntime().exec("cmd.exe /c start http://00fly.online"); + } + catch (Exception ex) + { + } + } + }); + httpLabel.setBounds(10, 500, 146, 18); + add(httpLabel); + } +} \ No newline at end of file diff --git "a/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/resources/icon.gif" "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/resources/icon.gif" new file mode 100644 index 0000000000000000000000000000000000000000..b1a689d7272f228f122f6ac7f3628ecc74516a17 GIT binary patch literal 1867 zcmV-R2ekM{Nk%w1VK4wN0Qdg@qX`A13I?YP2&xSRsSXLR5D2al45=9vu@VWg6brBv z4YU^zxfu?&84$G{6TKZ0vmhG3Ar-nO9=;?Pt|lb0DJHZnD7rE$yE81hJUG5eM!!{4 zz!n6<7zM={1&_=|2zu+J`D0a65u^2;y)|sLWa$4weQSxF+@@YZzYC`^CLjP_+`e{z`Y*YViQ1Nk2@^wxB zazy`jNdI+B|9MOEd{p*$Tl;la{dZjddQks+RR4Zb|9w~ge_7&lX6$}u^LJzSdu9KA zVcUXx_k&;mfKva0SO0=s|A<-ggKhtSWB-L=|Al4$glhPTVE>C_|A}V*j%WIdZ~u#E z|BY(@j%@#ocK?uW{hDq5l5zi(a{rcf|CM|Dn{oe`cmJPp{+oOMp>+SCf6;`3)`*4K zi-y*ck=d1!-nDm&5{+@yQosIFIlk23M_N9yeqJ#dWivOsJ{;G}stdH=i zpZlko{;iSzs+#|>mHxDw|G1yyva#m1v+KIH_phV=w5I>MqyN6B|G}mH!>a$tt^dcd z_{6;b%(VW@y8qI=?aAy*wp#j*8ktx`S0)f@bCKY@cr`f{`B(y z|Nj6000930A^8LW3IP8AEC2ui05AYB000R80RIUbNU)&6g9sBUT*$DYLxs8^)tN{U zlC6gr2}*QiN*FnC-$H)#Wy(<2Z$ol}D;FI)Zf_zzjOA$W+N|odx`i9^THLtYymEtcmtoXz zeEmueEYk92%hyt0=a74ZH_vkTA73Yq-^;)^lP=KSFe7ZR~Kps=oWTFK@b!PNqgGG^P^s3Wk2B*($78Tu}uXClIs* zHR?R)AfDCmYN{{3usCFzf(i<2tj1OWM6v_fV9jB7K1iyb(^9*Nkaw&>B&*qOTSd21 zOz|y2Hc)fegXZQLZLiesk_#T!S{g60^wvAY4-pU~#VCiZcFnn_3PWu!7++!~yqLmT z#m5R8A#x5*5G2YW>ZIl`y2McH3&y#GBJ37rY^%k`AlEDM5ks^9NI^BU_9(y?!~AQY z*}lpx&Q<7a1kXbZ(QrX7Q1gv3(pvm7#?&wd9ne-as-5Iq^g) z8;gCn=m|r9dg^I^aKS-x_S^H203Q!EF##h>bKK7ShQG;0O$Q0cKt}rDfHB-GXQs1X0kO9N z0%)KogGfLO%Ah>^-LH4s8v+Le5QwJ;G>2qfSGI>4R| z)20It4B!CAnBhSvEI@z)cpwEjNTL!!z<~h>fC55f$R8>ofGSoI02J6j6t~F5E;b|} F06RJDo|gas literal 0 HcmV?d00001 diff --git "a/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/resources/log4j.xml" "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/resources/log4j.xml" new file mode 100644 index 0000000..e75632b --- /dev/null +++ "b/00fly-Java\351\241\271\347\233\256\347\274\226\347\240\201\350\275\254\346\215\242\345\267\245\345\205\267\345\217\212\345\205\266\344\273\226/src/main/resources/log4j.xml" @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file -- Gitee