
正文
java代码转换器在线 java编码转换代码
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
怎样将Java源代码转换成Java开应用程序
我试了一下,jbuilder生成的exe文件,在没有装jre的机器上不能运行,于是我就在该exe文件的同一位置提供一个jre目录,可是该exe文件不会去自动找这个jre,应该怎样做才能使exe文件找到这个jre,并运行起来呢?
先写一个bak,检查有没有jre,有的话就直接运行你的程序,没有的话,先安装再执行。
---------------------------------------------------------------
jbuilder有一个隐藏的技巧可以让你从可执行文件来启动java程序,(不出现console窗口我没有做到)。需要jbuilderx的bin目录下的这些文件:
jbuilder.exe
jbuilderw.exe (可选)
jbuilder.config
jdk.config
“jbuilder.exe”是一个通用的可执行外壳文件,用以启动java程序,“jbuilderw.exe”好像是javaw.exe一样,它把“jbuilder.exe”包装起来,但是运行时候不显示那个console的窗口。使用这些文件的关键是文件名。“jbuilder.exe”查找一个文件叫“jbuilder.config”的配置文件,里面包含了运行java程序的必须信息。同样的“jbuilderw.exe”查找“jbuilder.exe”来启动不带console窗口的java程序。如果把jbuilder.exe重命名为“foo.exe”,那“foo.exe”将去寻找“foo.config”配置文件,同样“jbuilderw.exe”被重命名为“foow.exe”,它会去寻找“foo.exe”文件。
说到这里,聪明的读者应该猜到怎样利用jbuilder.exe来启动应用程序了。只要把jbuilder.exe,jbuilerw.exe,jbuilder.config改名成相应的文件名,在jbuilder.config里面指定主类和类路径,就能够通过执行jbuilder.exe(或者被改名后的exe文件)来启动java应用程序了。
在\jbuilderx\bin\目录下,后把jbuilder.exe,jbuilder.config,jdk.config四个文件拷贝到某目录下,然后打开jbuilder.config文件,作相应的修改:
在jbuilder.config里面找到下面两行
# start jbuilder using the its main class
mainclass com.borland.jbuilder.jbuilder ----修改主类为自己希望的类
config里面可以识别的命令可以在jbuilder/bin目录下的config_readme.txt里面找到详细说明。
然后修改jdk.config里面的javapath相对的路径,例如原来是
javapath ../jdk1.3/bin/java ----修改主类为自己打包的jre路径(可以使相对路径,如./jre)
最后将jbuilder.exe,jbuilder.config修改成所需要的文件名,例如foo.exe和foo.config文件。
下面的小技巧可能更有趣,将jar文件打包进入exe文件!
将jar包附加到jbuilder.exe后面去,执行过程:
copy /b ..\jbuilder.exe+hello.jar foo.exe
一个含jar包的exe文件得到了!
这个过程的大致原理是:exe文件的重要信息都在文件头部,所以把乱七八糟的东西放exe文件尾部是不要紧的;而jar/zip文件的重要信息是在文件尾部的,这样它们两不相干,能够容易的被执行。
相关问答
Q1: c#代码翻译成java
1、Java Language Conversion Assistant
Java Language Conversion Assistant是一款最出色和最受欢迎的Eclipse插件,它可以用一些简单的语法实现Java代码转换成C#代码。有些语法可以忽略文件、忽略类、合并类,或者将特殊的方法翻译成.NET的事件和属性。
2、Octopus .NET Translator
这是一个商业软件,不仅支持Java代码转换成C#代码,而且支持Java代码转换成C++,C#代码转换成VB.NET,以及VB.NET转换成C#。该软件主要提供一系列语法转换器,并且转换质量和速度都很不错。
3、Tangible Solution’s Java to C# Converter
这款Java转换C#的工具提供了商业版和免费版,免费版仅支持1000行的代码转换,但是这款软件的转换结果非常精确而且全面。该免费版软件可以将整个Java文件目录转换成C#文件,并且支持自定义设置,也可以添加注释。对任何一个C#初学者来说,它都是一款很不错的学习工具。
4、XES – Java To C#
这款Java转换C#工具以使用方便而著称,该工具可以提供一个准备的转换结果,并且让转换恰到好处,这款工具对初学者来说相当的方便。
5、varycode
Verycode是一个最好的在线代码转换平台,支持对c#, VB, Java, Ruby , Python等编程语言之间的转换
Q2: 有没有java文件转换成class文件的工具?
装一个最简单的java开发工具都可以,这是最基本的功能!
eclipse ,netbeans ,jcreator都可以
Q3: java 代码转换C#
string url = "" + "senderLoginName=" + "zy" + "token=" + "997a7cdc-2399-47e8-991e-96c859cccc7f";
HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url);
req.CachePolicy = new RequestCachePolicy(RequestCacheLevel.NoCacheNoStore);
req.Method = "POST";
byte[] fileData = null;
using (FileStream fs = new FileStream("c:\\LDAP集成设计文档.doc", FileMode.Open))
{
fileData = new byte[fs.Length];
fs.Read(fileData, 0, (int)fs.Length);
}
string BOUNDARY = "---------------------------7d4a6d158c9";
string fileName = "LDAP集成设计文档.doc";
StringBuilder sb = new StringBuilder();
sb.Append("--");
sb.Append(BOUNDARY);
sb.Append("\r\n");
sb.Append("Content-Disposition: form-data;\r\n name=\"1\"; filename=\"" + fileName + "\"\r\n");
sb.Append("Content-Type: application/msword\r\n\r\n");
req.Headers.Add("Content-Type", "multipart/form-data;boundary=" + BOUNDARY);
Listbyte sendData = new Listbyte();
sendData.AddRange(Encoding.UTF8.GetBytes(sb.ToString()));
sendData.AddRange(fileData);
sendData.AddRange(Encoding.UTF8.GetBytes("\r\n--" + BOUNDARY + "--\r\n"));
req.ContentLength = sendData.Count;
using (Stream reqStream = req.GetRequestStream())
{
reqStream.Write(sendData.ToArray(), 0, sendData.Count);
}
using (HttpWebResponse resp = (HttpWebResponse)req.GetResponse())
using (Stream respStream = resp.GetResponseStream())
using (FileStream fs = new FileStream("c:\\test.txt", FileMode.Truncate))
{
int ch = 0;
while ((ch = respStream.ReadByte()) != -1)
{
fs.WriteByte((byte)ch);
}
}
根据你的java代码转换的。
Q4: 数据单位转换工具java代码
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
public class UnitTransfer extends JFrame{
private final int WIDTH = 400, HEIGHT = 300;//窗口默认的宽度、高度
private JLabel lblInUnit=new JLabel("输入单位");
private JComboBox cboIn=new JComboBox(new String[]{"", ""});
private JLabel lblIn=new JLabel("输入数值");
private JTextField txtIn=new JTextField("10");
private JLabel lblOutUnit=new JLabel("输出单位");
private JLabel lblResult=new JLabel("显示结果");
private JLabel txtResult=new JLabel("结果");
private JComboBox cboOut=new JComboBox(new String[]{"", ""});
private JButton btnTrans = new JButton("转换");
private JButton btnClear = new JButton("清空");
private JRadioButton rdLeng = new JRadioButton("长度");
private JRadioButton rdWeig = new JRadioButton("时间");
private String [] lengthUnit={"米", "分米", "厘米", "毫米"};
private String [] timeUnit={"天", "时", "分", "秒"};
public UnitTransfer(){
super("简单的单位转换器 Beta");
this.setSize(WIDTH, HEIGHT);
this.setLayout(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ButtonGroup group = new ButtonGroup();
group.add(rdLeng);
group.add(rdWeig);
this.getContentPane().add(rdLeng);
this.getContentPane().add(rdWeig);
this.getContentPane().add(btnTrans);
this.getContentPane().add(btnClear);
this.getContentPane().add(lblIn);
this.getContentPane().add(txtIn);
this.getContentPane().add(lblInUnit);
this.getContentPane().add(cboIn);
this.getContentPane().add(lblResult);
this.getContentPane().add(txtResult);
this.getContentPane().add(lblOutUnit);
this.getContentPane().add(cboOut);
this.setVisible(true);
this.doLayout();
btnTrans.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
doConvert();
}
});
btnClear.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
txtIn.setText("0");
txtResult.setText("0");
}
});
rdLeng.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
cboIn.setModel(new DefaultComboBoxModel(lengthUnit));
cboOut.setModel(new DefaultComboBoxModel(lengthUnit));
}
});
rdWeig.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
cboIn.setModel(new DefaultComboBoxModel(timeUnit));
cboOut.setModel(new DefaultComboBoxModel(timeUnit));
}
});
rdLeng.setSelected(true);
cboIn.setModel(new DefaultComboBoxModel(lengthUnit));
cboOut.setModel(new DefaultComboBoxModel(timeUnit));
}
final int offX=100;
public void doLayout(){
super.doLayout();
rdLeng.setBounds(offX, 15, 60, 20);
rdWeig.setBounds(rdLeng.getX()+rdLeng.getWidth()+5, 15, 60, 20);
lblInUnit.setBounds(offX, rdLeng.getY()+rdLeng.getHeight()+20, 80, 20);
cboIn.setBounds(lblInUnit.getX()+lblInUnit.getWidth()+5, lblInUnit.getY(), 80, 20);
lblIn.setBounds(offX, lblInUnit.getY()+lblInUnit.getHeight()+5, 80, 20);
txtIn.setBounds(lblIn.getX()+lblIn.getWidth()+5, lblIn.getY(), 80, 20);
lblOutUnit.setBounds(offX, lblIn.getY()+lblIn.getHeight()+30, 80, 20);
cboOut.setBounds(lblOutUnit.getX()+lblOutUnit.getWidth()+5, lblOutUnit.getY(), 80, 20);
lblResult.setBounds(offX, cboOut.getY()+cboOut.getHeight()+5, 80, 20);
txtResult.setBounds(lblResult.getX()+lblResult.getWidth()+5, lblResult.getY(), 100, 20);
int w=getWidth ();
int x=(w-70*2-5)/2;//水平居中
btnTrans.setBounds(x, lblResult.getY()+lblResult.getHeight()+30, 70, 25);
btnClear.setBounds(btnTrans.getX()+btnTrans.getWidth()+3, btnTrans.getY(), 70, 25);
}
public void doConvert(){
double v=0;
try{
v= Double.parseDouble(txtIn.getText());
}catch(Exception ex){
txtIn.setText("0");
return;
}
//"米", "分米", "厘米", "毫米"
if(rdLeng.isSelected()){
switch(cboIn.getSelectedIndex()){
case 0:
break;
case 1:
v=v/10;
break;
case 2:
v=v/100;
break;
case 3:
v=v/1000;
break;
default:
return;
}
//v 现在是标准单位:米
switch(cboOut.getSelectedIndex()){
case 0:
break;
case 1:
v=v*10;
break;
case 2:
v=v*100;
break;
case 3:
v=v*1000;
break;
default:
return;
}
if(v0.01){
txtResult.setText(String.format("%2.8f", v));
}else{
txtResult.setText(String.format("%2.2f", v));
}
}else{
//"天", "时", "分", "秒"
switch(cboIn.getSelectedIndex()){
case 0:
v=v*24;
break;
case 1:
break;
case 2:
v=v/60;
break;
case 3:
v=v/3600;
break;
default:
return;
}
//v 现在是标准单位:小时
switch(cboOut.getSelectedIndex()){
case 0:
v=v/24;
break;
case 1:
break;
case 2:
v=v*60;
break;
case 3:
v=v*3600;
break;
default:
return;
}
if(v0.01){
txtResult.setText(String.format("%2.8f", v));
}else{
txtResult.setText(String.format("%2.8f", v));
}
}
}
public static void main(String[] args){
EventQueue.invokeLater(new Runnable() {
public void run() {
new UnitTransfer();
}
});
}
}
//请参考,欢迎指正
Q5: Java怎么转换c语言?
Java直接转C的没有。
Java转C#和C++的倒是有软件。(具体用法还要java代码转换器在线你自己研究)
比如:
1、Java语言转换器助手衔接java代码转换器在线,这个可以转C#。
2、Octopus的.NET转换器衔接java代码转换器在线,这个可以转C++或C#。
3、Tangible的Java转C#转换器衔接,有注释,方便学习,需要购买商业版才行。
4、XES的Java转C#转换器衔接,界面简单,容易上手。
5、Varycode工具衔接,在线工具,支持多语言转换(包括VB、Ruby、Python等)。
关于java代码转换器在线和java编码转换代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







