关于I/O读写文件的问题,一直是一头雾水啊
,今天早上起来就是找关于I/O方面操作和字符集、编码、解码问题的讨论帖。
题外话:各种的转载、ctrl+c ctrl+v 。。。。 你们懂的
代码编写、运行环境:eclipse 3.7 ,JDK 6UP23, win7 旗舰版。 editor encoding:utf8
文件 txt格式,保存格式为默认ansi。有中文有英文
引用
中文测试
英文测试
hello world work;
static void IoRead_Write(String inputFile, String outputFile) {
try {
BufferedReader bufferedReader = new BufferedReader(new FileReader(new File(inputFile)));
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(new File(outputFile)));
String line = bufferedReader.readLine();
while (null != line || "".equals(line)) {
bufferedWriter.write(line+"\r\n");
System.out.println(line);
line = bufferedReader.readLine();
}
bufferedReader.close();
bufferedWriter.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
当使用 eclipse 使用UTF-8作为workspace的字符集时,system.out.print时候是乱码,输出的文件也是乱码,而文件的格式是UTF-8,而使用gbk作为eclipse的workspace字符集时,控制台输出的是正常文字(无乱码)。查看文件编码是默认字符集(ASNI).
试了几次之后,俺这个小白认为,在读取文件(中文)时,以字节流读入内存中,在控制台打印时是使用IDE(editor)的encoding来进行转码,而在写文件也是使用ide的encoding来处理的,创建文件时也是使用当前IDE的encoding来做文件的字符集。而在双击打开时,系统使用ASNI来解码,所以造成了乱码。
小弟愚见,有什么不对的地方请各位拍砖指教。
分享到:
相关推荐
- 寄存器和数据操作:涉及操作寄存器的数据指令,如将数据移动到寄存器(mov R/I),从寄存器读取数据(acc),以及数据表(dat)的读取。 - 指令参数:指令参数的标记使用不同的符号表示,例如寄存器(R),立即...
Java I/O学习笔记: 磁盘操作 字节操作 字符操作 对象操作 网络操作 NIO & AIO Java I/O Java是一种面向对象的编程语言,由Sun Microsystems于1995年推出。它是一种跨平台的语言,意味着可以在不同的操作系统上运行...
深入探究文件 I/O:深入了解了文件 I/O 中的一些细节,譬如文件的管理方式、 错误返回的处理、空洞文件、O_APPEND 和 O_TRUNC 标志、原子操作与竞争冒险等等
Node.js作为一款以异步I/O为核心的服务器端JavaScript运行环境,因其高性能和事件驱动的特点受到广泛关注。异步I/O的核心理念在于允许服务器在等待I/O操作完成时,继续执行其他工作,而不是阻塞等待I/O操作结束。...
文件I/O基础-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
标准I/O库-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
在AVR单片机中,I/O(Input/Output)口的管理是核心功能之一,用于与外部世界交互。本文将详细阐述AVR的I/O用法。 首先,AVR的I/O接口由三个主要的寄存器组成:DDRX、PORTX和PINX。DDRX寄存器决定了I/O口的方向,...
PIC32MX220F032B学习笔记之I/O口 本笔记主要介绍了PIC32MX220F032B单片机的I/O口的基础知识和操作方法。首先介绍了TRISx寄存器的定义和作用,即控制I/O口的输入和输出方向。然后介绍了PORTx寄存器的设置和操作,即...
在操作系统设计中,输入输出(I/O)系统是至关重要的组成部分,它负责处理计算机与外部设备之间的通信。本文将基于《ORANGE’S:一个操作系统的实现》这本书的第十九章内容,探讨输入输出系统的基本概念、设计原则...
在操作系统设计中,输入输出(I/O)系统是至关重要的组成部分,它负责处理计算机与外部设备之间的数据交换。本文基于《ORANGE’S:一个操作系统的实现》这本书的读书笔记,探讨了输入输出系统的设计和实现,特别是第...
在FPGA(Field-Programmable Gate Array)学习过程中,Kintex-7系列是一个重要的研究对象,尤其在I/O接口的设计与应用方面。Kintex-7 FPGA的I/O系统由高性能(High Performance, HP)和宽范围(High Range, HR)两大...
#### 第十章 I/O接口、I/O指令与I/O实现方式 本章主要介绍微型计算机系统的输入/输出(I/O)接口、I/O指令以及不同的I/O实现方式,包括程序直接控制方式、程序中断方式、直接存储器访问(DMA)方式和通道传输方式。...
2024/7/8 笔记+项目源码
### JAVA JDK 学习笔记 i/o 部分 #### 输入/输出 (I/O) 概述 在程序设计中,输入/输出(Input/Output,简称I/O)是指计算机程序与外部设备(如硬盘、视频设备、网络主机等)之间进行数据交换的过程。由于涉及的...
我的一些 c/c++笔记
这些概念主要应用于I/O操作,特别是涉及套接字(socket)通信时。下面将详细解释这些概念以及它们之间的区别。 **阻塞与非阻塞** 阻塞I/O模式是指当应用程序尝试读取或写入数据时,如果所需的数据尚未准备好,那么...
本篇学习笔记将深入探讨文件I/O的基本概念、常见API、操作模式以及一些实用技巧,旨在帮助初学者快速入门。 首先,我们来了解一下什么是文件I/O。在计算机系统中,文件I/O是指应用程序通过操作系统提供的接口,与...
Pl/SQL简介 控制结构 复合数据类型 游标 异常 创建存储过程 函数的概念 包的概念 触发器概念