Java进阶API第七章
2023-12-16 18:36:40
Java进阶API第七章
一.?阶段?
Java NIO - File
Java NIO
中的Files
类(java.nio.file.Files
)提供了多种操作文件系统中文件的方法。Java Files
类是Java 1.7中引入的,是java.nio.file
包的一部分
@Test
public void FilesCopyTest(){
// 设置复制文件路径
Path path1 = Paths.get("D:\\1.txt");
Path path2 = Paths.get("D:\\2.txt");
// StandardCopyOption.REPLACE_EXISTING是设置复制操作的选项,表示如果目标文件已经存在,覆盖它。
try {
Files.copy(path1,path2,StandardCopyOption.REPLACE_EXISTING);
System.out.println("复制成功");
} catch (IOException e) {
System.out.println("复制失败");
}
}
?
二.字符集编码吹X?
- 字符是许多字符的集合
- 字符编码字面意思就是对字符进行编码,将某个字符映射成其他形式的数据以便在计算机中存储和传输
- 如果每种语言都要出一种字符集来存储的话,那就无法统一标准了,会造成多冗余的工作
- Unicode是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求
?
?
三.转换字符编码?
?
- Java批量转换文件夹中文件的编码(从gbk到utf8);
- 可以对网上下载的教程源码进行批量转码,一键搞定,生成新文件覆盖源文件
- 注意网上下载的源码包一般有class文件,一般只需要转码src文件夹即可
- 需要导入commons-io jar包
import org.apache.commons.io.FileUtils; import java.io.File; import java.io.IOException; import java.nio.charset.Charset; public class CodeTest { public static void main(String[] args) { File folder = new File("folder_path"); File[] files = folder.listFiles(); for (File file : files) { if (file.isFile() && file.getName().toLowerCase().endsWith(".txt")) { try { String content = FileUtils.readFileToString(file, Charset.forName("GBK")); FileUtils.writeStringToFile(file, content, Charset.forName("UTF-8")); System.out.println("文件 " + file.getName() + " 处理成功。"); } catch (IOException ex) { System.out.println("文件 " + file.getName() + " 处理失败:" + ex.getMessage()); } } } } }
?
文章来源:https://blog.csdn.net/2301_76556912/article/details/135034315
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!