1. 首页>动态要闻 > 信息

java中保存源文件时怎么把gbk

作者:何同远
2020-05-02
信息

1. java如何从gbk格式的文件中读取字符串保存为utf8的文件

读入: BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(fileFrom), Charset.forName("GBK")));

写出: BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(fileTo), Charset.forName("UTF-8")));

2. java工程是utf

修改编码格式:

方法一:

workspace工作间编码设置好了,当前workspace下创建的所有项目默认使用设置的编码,创建新的workspace工作间:

菜单“Window——>Preferences——>General——>Workspace”,默认Workspace使用GBK编码,在右边栏中选择“Other”,设置一种编码,比如:UTF-8(推荐)

方法二:

如果当前工作间设置了UTF-8编码,导入的项目使用的是GBK编码,需要额外指定项目的编码为:GBK。点击项目,鼠标右键“Properties——>Resource”,选择“Other”选项,指定编码为GBK

3. java有没有那个方法 获取文件保存的编码方式啊

如果一个文本文件被“文件编辑器”编辑过,可能会带上一些标记 ,就是文件的前几个字节说明了它的字符集编码方式,但并不是所有编辑器都会这么做,也可能在保存时由人来决定是否放置标记。

因此理论上说如果编辑器未放置任何标记是不可能知道文件的原始字符编码的,就好像你初次看一份密码加密过的文件时你也不可能知道它是什么加密方式一样,因为编码方式并不会和编码的数据放在一起的。

正常的方法是当你读取一个文件时,应该有人已经告诉了你这个文件是字符集是什么。这个过程应该是人工决定的,比如人们把它写在一个配置文件中,或者约定了整个软件只使用 UTF8 或 GBK 一种编码方式。作为一个通用型的软件推荐使用 UTF8 而不是 GBK,因为当你保存一个人名时你也知道这片神奇的土地上就是有些父母给孩子取名字时用一些中小学生字典上都找不到的字。这时GBK是无法保存这个汉字的。你不希望将来自己的软件碰到这个问题吧,解决的办法就是这么简单,用 UTF8就可以了。

4. java 将编码格式为utf

默认Java转换GBK格式的可以通过提供的转换类来实现,示例如下:

如果直接把Java源代码复制到Eclipse中所有的中文信息都出现乱码。将文本文件的编码格式从GBK转UTF-8的方式有很多,

比较早以前我处理方式都是自己写程序,从文本文件中用GBK编码读取数据,转为String类型,然后通过UTF-8编码重新写入文本文件实现转码,现在经常使用 Apache Common 组件,用commons-io.jar实现文件的

读取和写入,代码如下:

//GBK编码格式源码路径

String srcDirPath = "D:devworkspacemasdevmassrc";

//转为UTF-8编码格式源码路径

String utf8DirPath = "D:UTF8src";

//获取所有java文件

Collection javaGbkFileCol = FileUtils.listFiles(new File(srcDirPath), new String[]{"java"}, true);

for (File javaGbkFile : javaGbkFileCol) {

//UTF8格式文件路径

String utf8FilePath = utf8DirPath+javaGbkFile.getAbsolutePath().substring(srcDirPath.length());

//使用GBK读取数据,然后用UTF-8写入数据

FileUtils.writeLines(new File(utf8FilePath), "UTF-8", FileUtils.readLines(javaGbkFile, "GBK"));

}

5. 怎么处理警告:编码 GBK 的不可映射字符

输入javac -encoding utf-8 文件名.java。

就可以解决了。 当Java源代码中包含中文字符时,我们在用javac编译时会出现“错误:编码GBK的不可映射字符”。

由于JDK是国际版的,我们在用javac编译时,编译程序首先会获得我们操作系统默认采用的编码格式(GBK),然后JDK就把Java源文件从GBK编码格式转换为Java内部默认的Unicode格式放入内存中,然后javac把转换后的Unicode格式的文件编译成class类文件。 此时,class文件是Unicode编码的,它暂存在内存中,紧接着,JDK将此以Unicode格式编码的class文件保存到操作系统中形成我们见到的class文件。

当我们不加设置就编译时,相当于使用了参数:javac -encoding GBK Test.java,就会出现不兼容的情况。 拓展资料: javac 是java语言编程编译器。

全称java compiler。javac工具读由java语言编写的类和接口的定义,并将它们编译成字节代码的class文件。

javac 可以隐式编译一些没有在命令行中提及的源文件。用 -verbose 选项可跟踪自动编译。

当编译源文件时,编译器常常需要它还没有识别出的类型的有关信息。对于源文件中使e799bee5baa6e78988e69d8331333365663562用、扩展或实现的每个类或接口,编译器都需要其类型信息。

这包括在源文件中没有明确提及、但通过继承提供信息的类和接口。 JDK(Java Development Kit)称为Java开发包或Java开发工具,是一个编写Java的Applet小程序和应用程序的程序开发环境。

JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一些Java工具和Java的核心类库(Java API)。不论什么Java应用服务器实质都是内置了某个版本的JDK。

主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了自己的JDK,例如,IBM公司开发的JDK,BEA公司的Jrocket,还有GNU组织开发的JDK 参考资料:百度百科-javac常见错误。

推荐阅读
  • 日照好玩的地方和吃海鲜应该去哪听说日

    日照好玩的地方:万平口:"旅游来日照,必到万平口",已成为各地游客的共识。刘家湾赶海园:以赶海系列活动为主,集旅游、休闲、度假、民俗、健身于一体的综合旅游园。竹洞天:位于山东省日照市城区西端的将帅沟毛竹…

    信息 2024-11-15
  • 什么是铸造

    铸造是指将室温中为液态,但不久后将要固态化的物质倒入特定形状的铸模待其凝固成形的加工方式。 被铸物质多半原为固态但加热至液态的金属(例:铜、铁、铝、锡、铅等),而铸模的材料可以是沙、金属甚至陶瓷。 因应…

    信息 2024-11-15
  • 变形金刚中博派和狂派各有哪些人物

    博派:擎天柱,铁皮,大黄蜂,爵士,棘齿。狂派:威震天,红蜘蛛,眩晕,吵闹,萨克,碎骨魔,路障,迷乱。…

    信息 2024-11-15
  • 一平方毫米的铜线能过多少安的电流

    1平方毫米的铜线在不同电流下通过的安培数不同。最大是18A:(1)60A以下,选1平方毫米的铜线安全载流量是6A;(2)60~100A,选1平方毫米的铜线,安全载流量是5A;(3)100A以上,选1平方毫米的铜线,安全载流量是2.5A 。…

    信息 2024-11-15
  • 中华人民共和国城乡规划法第四十条有规

    自2008年1月1日起施行的《中华人民共和国城乡规划法》第四十条:在城市、镇规划区内进行建筑物、构筑物、道路、管线和其他工程建设的,建设单位或者个人应当向城市、县人民政府城乡规划主管部门或者省、自治区、直辖…

    信息 2024-11-15