1. java怎么转换编码
修改工作空间默认编码
1 进入Eclipse,导入一个项目工程,如果项目文件的编码与你的工具编码不一致 将会造成乱码。如:
2 如果要使插件开发应用能有更好的国际化支持,能够最大程度的支持中文输出,则最好使 Java文件使用UTF-8编码。 修改默认编码 在菜单导航栏上Window-->Preferences 打开"首选项"对话框,左侧导航树,导航到 General-->Workspace
3 Windows 7平台默认为GBK,简体中文操作系统Windows XP、Windows 2000简体中文的缺省编码是GB18030,Linux平台默认为UTF-8 那么在此工作空间中建立的工程编码是GBK,工程中建立的java文件也是GBK。 可以看到默认的是GBK编码格式,我们修改为UTF-8编码格式或者是你需要的编码格式 点击Apply,点击OK. END 修改文件的编码 1 有的时候我们导入项目文件,并没有导入到我们的workspace,只是一个引用,这个时候如果有编码的问题,我们可以修改文件的编码查看. 在Eclipse项目文件上右键,选择Properties,在Resource选择修改编码格式 END 修改某文件类型的编码 1 有时候我们需要某种类型的文件,如:*.jsp、*.java等 导航栏window-->preferences 打开"首选项"对话框,左侧导航树,导航到 Genera-->Content Types 2 右边找到要修改的文件的类型,我这边以*.java为例 在下面的Default encoding,输入框中输入UTF-8->Update->OK END 修改单个文件的编码 在包资源管理器右键点击文件->属性,改变文本文件编码格式为UTF-8 经过上述步骤,新建java文件即为UTF-8编码,新建项目也是UTF-8编码,在 Eclipse编译、运行、调试都是没问题的。 END 注意事项 请保持编码一致,不然会造成乱码,在Java开发中一般以UTF-8为主 在转换编码前可以先备份
2. java汉字编码转换
注释乱码还是网页页面乱码?
1) eclipse->window->preferences->General->Content Types
2) 找到要修改的文件的类型(JAVA,JSP等等),在下面有个Default encoding,在输入框中输入GBK
3) 点击Update
4) 点击OK
5) 重启eclipse 2 改变整个Eclipse工作空间的编码格式 1) eclipse->window->preferences->General->workspaceTypes 2) 改变文本文件编码格式为GBK
3. Java 编码转换
eclipse代码转换编码另存以下方法:
方法1:
Project Explorer中,右键选中Java文件,右键选择Properties,可查看文件保存路径然后可Ctrl + CV
方法2:
Project Explorer中,选择你的项目,直接Export到指定目录
4. java中文编码转换方法
设置工作空间的编码:
编辑器的编码会影响到所有的项目中的字符的显示,可以说是作用最为广泛的设置,每一个项目都会受到这个设置的影响。点击菜单栏中的窗口(Window)— —选项(Preferences)。
点击常规(General)— —工作空间(Wordspace),然后在右侧的文本文件编码格式(Text file encoding)中选择你想要设置的编码格式,系统默认的格式为GBK。
设置项目的编码:
如果其他的项目中不存在乱码问题,只是个别项目显示时出现乱码,那么我们不需要设置工作空间的编码,只需要修改项目的编码即可。
选中项目后,右键点击,在弹出的菜单中点击属性(Properties)。
在弹出的属性窗口中,选择资源(Resource)— —点击选择Other(其他),然后选择你想要的编码格式。
设置单个文件的编码:
只是个别文件出现了乱码,那么设置个别文件的编码格式就可以解决问题了。选中有乱码的文件,然后点击右键。
在弹出的菜单中选择属性(Properties)。
在弹出的属性窗口中选择资源,点击Other(其他)后设置个别文件的编码方式
5. java转换编码格式
Java一般存在两种文件格式,如下:
1.*.java文件是保存源代码的文本文件 (*代表类名) 使用 javac *.java可以编译该文件 使用 java *可以运行该类 2.*.class是用于保存 Java类的 二进制编码以及Class对象,每一个 Java类都有一个解释该类特征的 Class对象。*.jar文件 是一种压缩文件格式
6. java转码方法
String str="12C2";int i=Integer.parseInt(str,16)
;String str2=Integer.toBinaryString(i);str是16进制数的字符串str2就是2进制数的字符串
7. java的编码方式
1、添加了注释的源程序java代码如下。
2、在java源程序路径中打开cmd命令窗口,执行命令:javac HelloWorld.java。
3、执行后报错:HelloWorld.java:12:错误:编码GBK的不可映射字符(0x80)。
4、通过搜索,大致了解到该报错的原因为编码格式的问题。
解决方法一:在编译源程序的时候,添加命令:-encoding utf-8。
如:javac -encoding utf-8 HelloWorld.java。
5、执行后,成功使用javac编译。
6、使用java HelloWorld执行类,成功执行。
7、方法二:保存文件时选择GB2312字体即可。
8. java字符串转换编码
Java字符串转换成整型是可以使用JDK的Integer提供的valueOf和parseInt方法。
当然可以不使用API,自己实现,就需要把字符串拆成一个一个字符,然后自己把字符乘以对应位置的权重即可。
9. java string转编码
C语言有atoi、atol、atof等库函数,可分别把ASCII编码的字符串转化为int、long、float类型的数字。头文件:stdlib.h函数原型:int atoi(const char* nptr);(另外两个类似)举个例子:char *str="123";int num=atoi(str);执行后,num的值被初始化为123
10. Java数字与汉字的编码转换
Java判断一个字符串是否有中文一般情况是利用Unicode编码正则来做判断,但是其实这个区间来判断中文不是非常精确,以下是比较完善的判断方法
Java判断一个字符串是否有中文一般情况是利用Unicode编码(CJK统一汉字的编码区间:0x4e00–0x9fbb)的正则来做判断,但是其实这个区间来判断中文不是非常精确,因为有些中文的标点符号比如:,。等等是不能识别的。
以下是比较完善的判断方法:CharUtil.java
import java.util.regex.Pattern;
public class CharUtil {
public static void main(String[] args) {
String[] strArr = new String[] { "www.micmiu.com", "!@#$%^&*()_+{}[]|\"'?/:;<>,.", "!¥……()——:;“”‘'《》,。?、", "不要啊", "やめて", "韩佳人", "???" };
for (String str : strArr) {
System.out.println("===========> 测试字符串:" + str);
System.out.println("正则判断结果:" + isChineseByREG(str) + " -- " + isChineseByName(str));
System.out.println("Unicode判断结果 :" + isChinese(str));
System.out.println("详细判断列表:");
char[] ch = str.toCharArray();
for (int i = 0; i < ch.length; i++) {
char c = ch[i];
System.out.println(c + " --> " + (isChinese(c) ? "是" : "否"));
}
}
}
// 根据Unicode编码完美的判断中文汉字和符号
private static boolean isChinese(char c) {
Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS || ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS
|| ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B
|| ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION || ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS
|| ub == Character.UnicodeBlock.GENERAL_PUNCTUATION) {
return true;
}
return false;
}
// 完整的判断中文汉字和符号
public static boolean isChinese(String strName) {
char[] ch = strName.toCharArray();
for (int i = 0; i < ch.length; i++) {
char c = ch[i];
if (isChinese(c)) {
return true;
}
}
return false;
}
// 只能判断部分CJK字符(CJK统一汉字)
public static boolean isChineseByREG(String str) {
if (str == null) {
return false;
}
Pattern pattern = Pattern.compile("[\\u4E00-\\u9FBF]+");
return pattern.matcher(str.trim()).find();
}
// 只能判断部分CJK字符(CJK统一汉字)
public static boolean isChineseByName(String str) {
if (str == null) {
return false;
}
// 大小写不同:\\p 表示包含,\\P 表示不包含
// \\p{Cn} 的意思为 Unicode 中未被定义字符的编码,\\P{Cn} 就表示 Unicode中已经被定义字符的编码
String reg = "\\p{InCJK Unified Ideographs}&&\\P{Cn}";
Pattern pattern = Pattern.compile(reg);
return pattern.matcher(str.trim()).find();
}
}
- 相关评论
- 我要评论
-