大神帮帮忙将这个代码打包成一个.jar或者一个.exe可执行文件

cxxxx01 2013-09-28 11:11:37
package test1;

import java.io.*;


import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
class hh implements ActionListener{
TruncateString a=new TruncateString();
String str1="";
String str2="";
JFrame frame=new JFrame("文件选择器实例");
JTabbedPane tabPane=new JTabbedPane();//选项卡布局
Container con=new Container();//布局1
Container con1=new Container();//布局2

JLabel label2=new JLabel("判断条件");
JLabel label1=new JLabel("选择文件");

JTextField text1=new JTextField();
JTextField text2=new JTextField();
JButton button1=new JButton("...");
JButton button2=new JButton("ok");
JFileChooser jfc=new JFileChooser();//文件选择器
hh(){
jfc.setCurrentDirectory(new File("d:\\"));//文件选择器的初始目录定为d盘
//下面两行是取得屏幕的高度和宽度
double lx=Toolkit.getDefaultToolkit().getScreenSize().getWidth();
double ly=Toolkit.getDefaultToolkit().getScreenSize().getHeight();
frame.setLocation(new Point((int)(lx/2)-150,(int)(ly/2)-150));//设定窗口出现位置
frame.setSize(300,150);//设定窗口大小
frame.setContentPane(tabPane);//设置布局
//下面设定标签等的出现位置和高宽
label1.setBounds(10,10,70,20);
label2.setBounds(10,30,100,20);
text2.setBounds(80,10,120,20);
text1.setBounds(80,30,120,20);
button1.setBounds(210,10,50,20);
button2.setBounds(210,30,50,20);

button1.addActionListener(this);//添加事件处理
button2.addActionListener(this);//添加事件处理

con.add(label2);
con.add(label1);
con.add(text1);
con.add(text2);
con.add(button1);
con.add(button2);
con.add(jfc);
tabPane.add("目录/文件选择",con);//添加布局1
//tabPane.add("暂无内容",con1);//添加布局2
frame.setVisible(true);//窗口可见
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//使能关闭窗口,结束程序
}
public void actionPerformed(ActionEvent e) {//事件处理

if(e.getSource().equals(button2)){
try{
str2=text1.getText();
str2= str2.trim();//去掉多余空格和首尾括号

BufferedWriter br1 = new BufferedWriter(new FileWriter("d:/d.txt"));



File file = new File(str1);

StringBuilder sb = new StringBuilder();
String s ="";


BufferedReader br = new BufferedReader(new FileReader(file));
while( (s = br.readLine()) != null) {
//读取。txt中的内容读一行回车一行
sb.append(s + "\n");
}
br.close();//读取结束关闭
String str = sb.toString();
if(str.indexOf(str2)!=-1){//判断所要找的判断语句是不是在str里面 如果在运行以下代码不在运行else
TruncateString ts = new TruncateString(str);
String ss = ts.getString(str2);
System.out.println(ss);


//把获得的数据变成流的形式输出到d.txt里面
br1.write(str2+"\r\n判断条件为\r\n"+ss);//写入
JOptionPane.showMessageDialog(button2, "文件保存在d盘下的d.txt文件中","信息提示", JOptionPane.CANCEL_OPTION);
br1.close();
}
else{
//判断语句不在str里面运行以下内容
System.out.println("在测试代码中没有找到"+str2+"语句");
BufferedWriter br2 = new BufferedWriter(new FileWriter("d:/d.txt"));//你要写入的文件路径加上名称
br2.write("在测试代码中没有找到"+str2+"语句");
JOptionPane.showMessageDialog(button2, "文件保存在d盘下的d.txt文件中","信息提示", JOptionPane.CANCEL_OPTION);//弹出提示框
br2.close();

}

}catch(Exception e1){}


}


if(e.getSource().equals(button1)){
jfc.setFileSelectionMode(0);//设定只能选择到文件
int state=jfc.showOpenDialog(null);//此句是打开文件选择器界面的触发语句
if(state==1){
return;//撤销则返回
}
else{
File f=jfc.getSelectedFile();//f为选择到的文件
text2.setText(f.getAbsolutePath());
str1=text2.getText();

}
}

}


public static void main(String[] args) {
new hh();
System.out.println("Hello world");
JOptionPane.showMessageDialog(null,"运行" ,"标题",JOptionPane.OK_OPTION);



}
}


class TruncateString {
int i=1;

private String s = "";

public TruncateString() {
s = "";
}

public TruncateString(String s) {//做个构造器
super();//递归父类中的所有无参构造器
this.s = s;
}

public String getS() {
return s;
}

public void setS(String s) {
this.s = s;
}

public String getString(String judge) {
String resultString = "";// 存结果

int len = judge.length();
int position = 0;
while (true) {
int index = s.indexOf(judge, position);// 持续查找 类似"if" 的字符串位置。
if (index < 0)// 没有了。
{
break;
}
position = index;
//System.out.println("position is " + position);// 测试用,输出位置
//resultString[ += judge + "\r\n";// "if"存入数组
resultString += getJudge(position, len) + "\r\n";// 结果存入。
if (position + len >= s.length())// 到文件尾了,退出。
{
break;
}


position += len;// 从if后面继续找
}

return resultString;// 以数组形式返回。
}

//找到if 后面的条件表达式,替换 "&&" 和 "||".
//
public String getJudge(int position, int len) {
int newP = position + len;
String r = "";
int numberOfBrackets = 0;
while (s.charAt(newP++) != '(') {
continue;
}
numberOfBrackets++;
position = newP - 1;
while (numberOfBrackets != 0) {
while (newP + 1 < s.length()) {
char c = s.charAt(newP++);
if (c == '(') {
numberOfBrackets++;
break;
} else if (c == ')') {
numberOfBrackets--;
break;
}
}
}
r = s.substring(position, newP);
r = r.replaceAll("\\&\\&", "和").replaceAll("\\|\\|", "或者");
r = r.trim().substring(1, r.length()-1);//去掉多余空格和首尾括号
int t=i++;
String a=Integer.toString(t);

return a+"."+" "+r;
}
}


大神帮帮忙将这个代码打包成一个.jar或者一个.exe可执行文件发到chenxu491559240@qq.com小弟菜鸟一只研究了好久还是不会打包谢谢各位大神
...全文
117 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
枫醉秋 2013-09-29
  • 打赏
  • 举报
回复
引用 楼主 u011530761 的回复:
package test1; import java.io.*; import java.awt.*; import javax.swing.*; import java.awt.event.*; class hh implements ActionListener{ TruncateString a=new TruncateString(); String str1=""; String str2=""; JFrame frame=new JFrame("文件选择器实例"); JTabbedPane tabPane=new JTabbedPane();//选项卡布局 Container con=new Container();//布局1 Container con1=new Container();//布局2 JLabel label2=new JLabel("判断条件"); JLabel label1=new JLabel("选择文件"); JTextField text1=new JTextField(); JTextField text2=new JTextField(); JButton button1=new JButton("..."); JButton button2=new JButton("ok"); JFileChooser jfc=new JFileChooser();//文件选择器 hh(){ jfc.setCurrentDirectory(new File("d:\\"));//文件选择器的初始目录定为d盘 //下面两行是取得屏幕的高度和宽度 double lx=Toolkit.getDefaultToolkit().getScreenSize().getWidth(); double ly=Toolkit.getDefaultToolkit().getScreenSize().getHeight(); frame.setLocation(new Point((int)(lx/2)-150,(int)(ly/2)-150));//设定窗口出现位置 frame.setSize(300,150);//设定窗口大小 frame.setContentPane(tabPane);//设置布局 //下面设定标签等的出现位置和高宽 label1.setBounds(10,10,70,20); label2.setBounds(10,30,100,20); text2.setBounds(80,10,120,20); text1.setBounds(80,30,120,20); button1.setBounds(210,10,50,20); button2.setBounds(210,30,50,20); button1.addActionListener(this);//添加事件处理 button2.addActionListener(this);//添加事件处理 con.add(label2); con.add(label1); con.add(text1); con.add(text2); con.add(button1); con.add(button2); con.add(jfc); tabPane.add("目录/文件选择",con);//添加布局1 //tabPane.add("暂无内容",con1);//添加布局2 frame.setVisible(true);//窗口可见 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//使能关闭窗口,结束程序 } public void actionPerformed(ActionEvent e) {//事件处理 if(e.getSource().equals(button2)){ try{ str2=text1.getText(); str2= str2.trim();//去掉多余空格和首尾括号 BufferedWriter br1 = new BufferedWriter(new FileWriter("d:/d.txt")); File file = new File(str1); StringBuilder sb = new StringBuilder(); String s =""; BufferedReader br = new BufferedReader(new FileReader(file)); while( (s = br.readLine()) != null) { //读取。txt中的内容读一行回车一行 sb.append(s + "\n"); } br.close();//读取结束关闭 String str = sb.toString(); if(str.indexOf(str2)!=-1){//判断所要找的判断语句是不是在str里面 如果在运行以下代码不在运行else TruncateString ts = new TruncateString(str); String ss = ts.getString(str2); System.out.println(ss); //把获得的数据变成流的形式输出到d.txt里面 br1.write(str2+"\r\n判断条件为\r\n"+ss);//写入 JOptionPane.showMessageDialog(button2, "文件保存在d盘下的d.txt文件中","信息提示", JOptionPane.CANCEL_OPTION); br1.close(); } else{ //判断语句不在str里面运行以下内容 System.out.println("在测试代码中没有找到"+str2+"语句"); BufferedWriter br2 = new BufferedWriter(new FileWriter("d:/d.txt"));//你要写入的文件路径加上名称 br2.write("在测试代码中没有找到"+str2+"语句"); JOptionPane.showMessageDialog(button2, "文件保存在d盘下的d.txt文件中","信息提示", JOptionPane.CANCEL_OPTION);//弹出提示框 br2.close(); } }catch(Exception e1){} } if(e.getSource().equals(button1)){ jfc.setFileSelectionMode(0);//设定只能选择到文件 int state=jfc.showOpenDialog(null);//此句是打开文件选择器界面的触发语句 if(state==1){ return;//撤销则返回 } else{ File f=jfc.getSelectedFile();//f为选择到的文件 text2.setText(f.getAbsolutePath()); str1=text2.getText(); } } } public static void main(String[] args) { new hh(); System.out.println("Hello world"); JOptionPane.showMessageDialog(null,"运行" ,"标题",JOptionPane.OK_OPTION); } } class TruncateString { int i=1; private String s = ""; public TruncateString() { s = ""; } public TruncateString(String s) {//做个构造器 super();//递归父类中的所有无参构造器 this.s = s; } public String getS() { return s; } public void setS(String s) { this.s = s; } public String getString(String judge) { String resultString = "";// 存结果 int len = judge.length(); int position = 0; while (true) { int index = s.indexOf(judge, position);// 持续查找 类似"if" 的字符串位置。 if (index < 0)// 没有了。 { break; } position = index; //System.out.println("position is " + position);// 测试用,输出位置 //resultString[ += judge + "\r\n";// "if"存入数组 resultString += getJudge(position, len) + "\r\n";// 结果存入。 if (position + len >= s.length())// 到文件尾了,退出。 { break; } position += len;// 从if后面继续找 } return resultString;// 以数组形式返回。 } //找到if 后面的条件表达式,替换 "&&" 和 "||". // public String getJudge(int position, int len) { int newP = position + len; String r = ""; int numberOfBrackets = 0; while (s.charAt(newP++) != '(') { continue; } numberOfBrackets++; position = newP - 1; while (numberOfBrackets != 0) { while (newP + 1 < s.length()) { char c = s.charAt(newP++); if (c == '(') { numberOfBrackets++; break; } else if (c == ')') { numberOfBrackets--; break; } } } r = s.substring(position, newP); r = r.replaceAll("\\&\\&", "和").replaceAll("\\|\\|", "或者"); r = r.trim().substring(1, r.length()-1);//去掉多余空格和首尾括号 int t=i++; String a=Integer.toString(t); return a+"."+" "+r; } } 大神帮帮忙将这个代码打包成一个.jar或者一个.exe可执行文件发到chenxu491559240@qq.com小弟菜鸟一只研究了好久还是不会打包谢谢各位大神
发给你了,运行一下看看
枫醉秋 2013-09-29
  • 打赏
  • 举报
回复
利用jar命令或者 eclipse打包就行了,没有什么难的
风雨扬尘 2013-09-29
  • 打赏
  • 举报
回复
打包成jar包的话eclipse等集成开发工具就可以的。File-->Export-->Excutable Jar; 打包成jar包后,有相应的工具将成转换成exe,不是很难

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧