㈠ java开发的项目是不是要讲java文件转换成二进制的就可以在桌面上直接运行有没有那样的转换软件
可以做到的,网上好多这样的软件。下面我给介绍下:
1. 首先要准备一个转换软件----exej
exej这个软件的下载地址我就不个大家了(我好想给忘了!--!),大家去 搜一搜就可以找到了。
2. 准备Eclipse
关于这个我就不多介绍了,相信大家应该已经很熟了。
准备的东西就需要这么多了,好,下面我们来开始转换。
第一步:先编写要转换的java文件
我用的是一个简单的例子(如图)
第二步:将编写好的java文件转换成.jar文件(这个有人可能不知道怎么弄)
1.点击右键选择[导出]
2.选择JAR文件
3.点击[下一步]选择jar文件导出的路径,我选的是桌面。
第三步:运行exej
1.首先是一个Welcome界面,我们不管他直接[下一步]
2.我们选择[JAR in EXE mode]选项,[下一步]
3.我们先填写[General]的内容,这个是一个短名称可以随便命名,
然后填写[Directories]这个是你转换后的.exe文件的路径。[下一步]
4.因为我的例子是基于控制台的应用所以我们选择[Console application],你也可以编写GUI应用,那就选择
GUI application。
[Executable name]这个是转换后exe文件的名称,我起的名字是“javatoexe”
[icon File] 你可以为这个exe文件添加一个图标,必须是.ico文件,否则转换的时候会报错。[下一步]
5.首先点击绿色的加号,选择我们刚才导出的jar文件,[OK]点击Main class后面的按钮,来选择主类,我的主类是“Javatoexe”就是我们的例子。[下一步]
6.填写java版本 上面1.3 下面1.6
配置JRE 点击[Advanced Options] 选择[Search sequence],点击绿色的加号,点击上面的[Directory]选项,在选择jre的路径,我的路径是“E:/Program Files/Java/jre1.5.0”,[OK] [下一步]
7.我们选择[Client hotspot VM] [下一步]
8.我们默认直接[下一步]
9.我们默认直接[下一步]
编译结束后[Exit]
这就是我们编译好的exe文件。
双击运行,运行完毕后会自动关闭dos框。
这样java文件就可以转换成exe文件。
㈡ java里怎样把文件转换成二进制
转换文件成为二进制数据并保存的代码:
取出数据并还原文件到本地的java代码:
[java]view plain//读取数据库二进制文件
publicvoidreaderJpg()throwsSQLException
{
connection=connectionManager.getconn();//自己连接自己的数据库
StringsqlString="selectimagesfromsave_imagewhereid=4";//从数据库中读出要还原文件的二进制码,这里我读的是自己的数据库id为4的文件
Filefile=newFile("E:\1.jpg");//本地生成的文件
if(!file.exists())
{
try{
file.createNewFile();
}catch(Exceptione){
e.printStackTrace();
}
}
try{
byte[]Buffer=newbyte[4096*5];
statement=connection.prepareStatement(sqlString);
resultSet=statement.executeQuery();
if(resultSet.next())
{
FileOutputStreamoutputStream=newFileOutputStream(file);
InputStreamiStream=resultSet.getBinaryStream("images");//去字段用getBinaryStream()
intsize=0;
while((size=iStream.read(Buffer))!=-1)
{
System.out.println(size);
outputStream.write(Buffer,0,size);
}
}
}catch(Exceptione){
e.printStackTrace();
}
}
㈢ java 16进制字符串转为二进制bit数组
应该用byte型数组
public static String stringToHexString(String strPart) {
String hexString = "";
for (int i = 0; i < strPart.length(); i++) {
int ch = (int) strPart.charAt(i);
String strHex = Integer.toHexString(ch);
hexString = hexString + strHex;
}
return hexString;
}
private static String hexString="0123456789ABCDEF";
/*
* 将字符串编码成16进制数字,适用于所有字符(包括中文)
*/
public static String encode(String str)
{
// 根据默认编码获取字节数组
byte[] bytes=str.getBytes();
StringBuilder sb=new StringBuilder(bytes.length*2);
// 将字节数组中每个字节拆解成2位16进制整数
for(int i=0;i<bytes.length;i++)
{
sb.append(hexString.charAt((bytes[i]&0xf0)>>4));
sb.append(hexString.charAt((bytes[i]&0x0f)>>0));
}
return sb.toString();
}
/*
* 将16进制数字解码成字符串,适用于所有字符(包括中文)
*/
public static String decode(String bytes)
{
ByteArrayOutputStream baos=new ByteArrayOutputStream(bytes.length()/2);
// 将每2位16进制整数组装成一个字节
for(int i=0;i<bytes.length();i+=2)
baos.write((hexString.indexOf(bytes.charAt(i))<<4 |hexString.indexOf(bytes.charAt(i+1))));
return new String(baos.toByteArray());
}
private static byte uniteBytes(byte src0, byte src1) {
byte _b0 = Byte.decode("0x" + new String(new byte[] {src0})).byteValue();
_b0 = (byte) (_b0 << 4);
byte _b1 = Byte.decode("0x" + new String(new byte[] {src1})).byteValue();
byte ret = (byte) (_b0 | _b1);
return ret;
public static byte[] HexString2Bytes(String src)
{
byte[] ret = new byte[6];
byte[] tmp = src.getBytes();
for(int i=0; i<6; ++i )
{
ret[i] = uniteBytes(tmp[i*2], tmp[i*2+1]);
}
return ret;
}
㈣ Java中如何把图片转换成二进制流
使用java的IO流对图片进行二进制读取操作即可
示例为:读取图片为二进制流,并写入到其他图片中
staticvoidtestCopyImage(){
Filesource=newFile("E:\share\Wallpaper\Bliss.jpg");
Filedesk=newFile("d:\images");
if(!desk.exists()){
desk.mkdir();
}
try{
FileInputStreaminputStream=newFileInputStream(source);
FileOutputStreamoutputStream=newFileOutputStream(newFile("d:/images/Bliss.jpg"));
intch=inputStream.read();
while(ch!=-1){
outputStream.write(ch);
ch=inputStream.read();
}
inputStream.close();
outputStream.close();
System.out.println("图片复制成功!");
}catch(FileNotFoundExceptione){
System.out.println("文件不存在:"+e.getMessage());
}catch(IOExceptione){
System.out.println("文件读取错误:"+e.getMessage());
}
}
㈤ java中怎样把图片转换成二进制
File file = new File("C:/Program Files/HITACHI/EUR Print Service/IMAGE/aaa.jpg");
byte[] bbb = new byte[10240];
try {
InputStream a = new FileInputStream(file);
a.read(bbb);
System.out.println(bbb[0]);
System.out.println(Integer.toBinaryString(bbb[0]));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
我这里是一次把图片全读进来,所以定义的数组长度为10240,也就是10kb吧,当然你也可以定义小点,然後分次读。反正二进制都在这个数组里面,最後两句我只是举了个例子教你怎麼看这个二进制,第一个是现实二进制对应的整数,第二个是显示二进制了。
㈥ 利用java,怎么把二进制字符串转化为相应的二进制数组
写了一下 就这专样属
public class test {
public static void main(String[] args) {
String a="10000101010";
char[] b = a.toCharArray();
System.out.println(b[1]);
}
}
㈦ JAVA编程,请问怎么将十进制数转换成二进制输出,又怎么将二进制数转换成十进制输出
1、创建java类,TestNumConv.java;
㈧ java如何把图片转换成二进制并存到oracle的blob中,求代码
importjavax.imageio.ImageIO;
importjava.awt.image.BufferedImage;
importjava.io.ByteArrayInputStream;
importjava.io.ByteArrayOutputStream;
importjava.io.File;
importjava.io.IOException;
publicclassImageUtils{
publicstaticvoidmain(String[]args){
Stringstr=img2Binary("C:\Users\hny\Desktop\favicon.jpg");
System.out.println(str);
binary2Img("C:\Users\hny\Desktop\favicon2.jpg",str);
}
/**
*图片转二进制字符串
*
*@图片路径
*@return
*/
publicstaticStringimg2Binary(Stringpath){
Filefile=newFile(path);
if(!file.exists()){
returnnull;
}
try{
BufferedImagebi=ImageIO.read(file);
ByteArrayOutputStreambaos=newByteArrayOutputStream();
Stringsuffix=getSuffix(path);
ImageIO.write(bi,suffix,baos);
byte[]bytes=baos.toByteArray();
returnnewsun.misc.BASE64Encoder().encodeBuffer(bytes).trim();
}catch(IOExceptione){
e.printStackTrace();
}
returnnull;
}
/**
*字符串转图片文件
*
*@parampath图片路径
*@paramimgBinary图片字符串
*/
publicstaticvoidbinary2Img(Stringpath,StringimgBinary){
try{
Filefile=newFile(path);
byte[]bytes1=newsun.misc.BASE64Decoder().decodeBuffer(imgBinary);
ByteArrayInputStreams=newByteArrayInputStream(bytes1);
BufferedImagebi1=ImageIO.read(s);
Stringsuffix=getSuffix(path);
ImageIO.write(bi1,suffix,file);
}catch(IOExceptione){
e.printStackTrace();
}
}
/**
*获取图片后缀名
*
*@parampath
*@return
*/
privatestaticStringgetSuffix(Stringpath){
intindex=path.contains(".")?path.lastIndexOf("."):-1;
if(index>-1){
returnpath.substring(index+1);
}
returnnull;
}
}