- 浏览: 305269 次
- 性别:
- 来自: 江阴
文章分类
最新评论
package com.xjh.dh; import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStreamReader; import java.io.OutputStreamWriter; /** * * ok * * @author xiejiaohui * */ public class FileCheck { public static void main(String[] args) throws Exception { String file = "c:\\a.csv"; String write_ok = "c:\\a_ok.csv"; String write_er = "c:\\a_er.csv"; // 没有乱码 String read_charset = "gbk"; // 读文件的字符集 String writer_charset = "utf-8"; // 写文件的字符集 // 乱码 // String read_charset = "utf-8"; // String writer_charset = "gbk"; // 乱码 // String read_charset = "utf-8"; // String writer_charset = "utf-8"; // 乱码 // String read_charset = "gbk"; // String writer_charset = "gbk"; // 乱码 // String read_charset = "iso-8859-1"; // String writer_charset = "iso-8859-1"; // String charset = "utf-8"; // String charset = "iso-8859-1"; // String charset = "gb2312"; InputStreamReader inputStreamReader = new InputStreamReader( new FileInputStream(file), read_charset); BufferedReader bufferedReader = new BufferedReader(inputStreamReader); FileOutputStream outputStream_ok = new FileOutputStream(write_ok); FileOutputStream outputStream_er = new FileOutputStream(write_er); OutputStreamWriter writer_ok = new OutputStreamWriter(outputStream_ok, writer_charset); OutputStreamWriter writer_er = new OutputStreamWriter(outputStream_er, writer_charset); try { String s = null; int i = 0; while ((s = bufferedReader.readLine()) != null) { String[] s2 = s.split("\\,"); if (s2.length != 54) { // System.out.println("error in line: " + (i + 1) + " " + s); System.out.println(s); i++; writer_er.append(s); writer_er.append("\n"); continue; } else { writer_ok.append(s); writer_ok.append("\n"); } i++; } System.out.println("ok " + i ); } catch (Exception e) { e.printStackTrace(); } finally { writer_ok.close(); writer_er.close(); bufferedReader.close(); } } }
以下两个文件会出现乱码
package com.xjh.dh; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileWriter; import java.io.InputStreamReader; /** * * 写出来的文件有乱码 * * @author xiejiaohui * */ public class FileCheck2 { public static void main(String[] args) throws Exception { String file = "c:\\a.csv"; FileWriter fileWriter_ok = new FileWriter(new File("c:\\a_ok.csv")); FileWriter fileWriter_er = new FileWriter(new File("c:\\a_er.csv")); String charset = "gbk"; // String charset = "utf-8"; // String charset = "iso-8859-1"; // String charset = "gb2312"; InputStreamReader inputStreamReader = new InputStreamReader( new FileInputStream(file), charset); BufferedReader bufferedReader = new BufferedReader(inputStreamReader); try { String s = null; int i = 0; while ((s = bufferedReader.readLine()) != null) { String[] s2 = s.split("\\,"); if (s2.length != 54) { System.out.println("error in line: " + (i + 1) + " " + s); // System.out.println(s); i++; fileWriter_er.append(s); fileWriter_er.append("\n"); continue; } else { fileWriter_ok.append(s); fileWriter_ok.append("\n"); } i++; } System.out.println("ok " + i ); } catch (Exception e) { e.printStackTrace(); } finally { fileWriter_er.close(); fileWriter_ok.close(); bufferedReader.close(); } } }
package com.xjh.dh; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.FileWriter; /** * * 写出来的文件有乱码 * * @author xiejiaohui * */ public class FileCheck3 { public static void main(String[] args) throws Exception { BufferedReader bufferedReader = new BufferedReader(new FileReader( "c:\\a.csv")); FileWriter fileWriter_ok = new FileWriter(new File( "c:\\a_ok.csv")); FileWriter fileWriter_er = new FileWriter(new File( "c:\\a_er.csv")); try { String s = null; int i = 0; while ((s = bufferedReader.readLine()) != null) { String[] s2 = s.split("\\,"); if (s2.length != 54) { System.out.println("error in line: " + (i + 1) + " " + s); // System.out.println(s); i++; fileWriter_er.append(s); fileWriter_er.append("\n"); continue; } else { fileWriter_ok.append(s); fileWriter_ok.append("\n"); } i++; } System.out.println("ok " + i ); } catch (Exception e) { e.printStackTrace(); } finally { fileWriter_er.close(); fileWriter_ok.close(); bufferedReader.close(); } } }
发表评论
-
求一个四位数,这个数字乘以9以后,等于这个数的倒序
2014-01-06 15:54 2440求一个四位数,这个数字乘以9以后,等于这个数的倒序 pa ... -
Java Puzzlers
2013-11-26 22:31 882package com.xjh.study; pub ... -
java ProcessBuidler
2013-11-23 16:10 658import java.io.File; impor ... -
java txt to excel
2013-11-16 11:40 1054package com.xiejiaohui.dc; ... -
java程序在tomcat环境下读取配置文件
2013-08-02 21:43 1683package com.xiejiaohui.core; ... -
inno setup 下载地址
2013-07-15 14:37 697经常要制作安装文件的,大部分的人是用inno setup 来制 ... -
我的第一个 web server 程序
2013-03-08 22:26 986参考书《How Tomcat Works》这本书非常好,我觉得 ... -
我的第一个 Jetty 程序
2013-03-08 22:08 1241参考网上的例子 在 eclipse 中新建 java 项目 ... -
计算两个日期的相隔天数
2013-02-17 21:16 928package com.xjh.util; impo ... -
java读取文件和写入文件
2013-01-11 21:49 1219package com.xjh.util; imp ... -
读取两个文件中的行数,写入第三个文件
2013-01-11 14:44 1448有一个联行号的文件,和一个银行文件,需要读取联行号文件中的某行 ... -
我写的一个读取文件写入excel的程序
2013-01-07 21:18 1313我最近写了一个程序,这个程序的需求是这样的: 1 读取一个t ... -
比较数组中的两个账号是否相同(初学者)
2012-09-03 19:54 885Comparer.java package com.xj ... -
测试_20120818
2012-08-18 19:46 945Calculater.java package com. ... -
java加密解密
2011-11-05 14:48 657http://snowolf.iteye.com/blog/3 ... -
一个小学五年级的暑假作业
2011-08-24 11:12 770请你从字母算式里写出数字计算。 W I N ... -
java 递归删除某个目录
2010-10-11 16:02 1687import java.io.File; import ... -
Java 读文件,写文件
2010-05-31 08:20 1646package com.xjh.util; import ... -
判断一个日期字符串是否输入正确
2010-01-16 14:54 1396import java.text.ParseExcepti ... -
jsp页面中不能显示图片
2008-06-13 14:29 3758在 AIX 5.3 操作系统,WebSphere 5.1 应用 ...
相关推荐
### Java IO流中的Reader与Writer方法使用详解 在Java编程语言中,IO(Input/Output)操作是非常重要的一个环节,它涉及到数据的读取与写入。本文将深入探讨Java IO流中的`Reader`和`Writer`类及其常用方法,并通过...
import java.nio.file.Paths; public class CSVReader { public static void main(String[] args) { try (FileReader reader = new FileReader("input.csv"); CSVParser parser = CSVParser.parse(reader, CSV...
Java中的`File`类是Java I/O流体系中不可或缺的一部分,它是用来操作文件和目录的基础类。`File`对象代表了文件和目录路径名的抽象表示。在这个详细的讲解中,我们将深入探讨`File`类的各种功能,包括创建、读取、...
IO 概述 File 类 IO 流分类 InputStream & Reader OutputStream & Writer RandomAccessFile 类 对象的序列化
同时,File类并不涉及文件内容的读写,如需读写文件内容,还需要结合InputStream、OutputStream、Reader、Writer等流类进行操作。 通过上述介绍,我们可以看出File类在Java编程中扮演了重要角色,它为文件和目录的...
在Java编程语言中,`File`类是处理文件和目录的核心类,位于`java.io`包下。这个类提供了一系列的方法来操作文件和目录,包括创建、删除、重命名、获取属性等。当我们谈论`File`类与IO流的结合时,主要是指使用`File...
`InputStream`、`OutputStream`、`Reader`和`Writer`是Java IO流的基础类,它们提供了读写文件的基本接口。本篇文章将深入讲解这些类的用法,并提供实际的代码示例,帮助初学者更好地理解和应用。 1. `InputStream`...
在Java编程语言中,`File`类是处理文件和目录的核心工具。它是`java.io`包的一部分,提供了许多方法来创建、读取、写入、删除文件以及操作目录。以下是对`File`类以及文件读写、复制和图片下载的详细讲解。 1. **...
其中,`InputStream`和`OutputStream`是所有字节流的基类,而`Reader`和`Writer`则是所有字符流的基类。 - **字节流**:适用于处理二进制数据,如图片、音频文件等。`FileInputStream`和`FileOutputStream`是字节...
本资料"java-IO.rar_File and java"聚焦于Java I/O流在读写文件以及文件替换方面的实践应用。 一、Java I/O 流概述 Java I/O流模型基于流的概念,流可以看作是数据的序列,可以从源(如文件或网络连接)读取,也...
在Java中,为了方便地处理文件及文件夹,`java.io`包中提供了一个非常重要的类——`File`类。这个类封装了与文件和目录相关的操作,使得开发人员能够轻松地进行文件管理。 ##### 1. 创建File对象 `File`类的对象...
Java中有两种基本类型的输入流:`InputStream`(字节流)和`Reader`(字符流)。 - **输出流**(Output Streams):用于将数据写入到目的地。同样有两种基本类型的输出流:`OutputStream`(字节流)和`Writer`(字符...
字节流包括`InputStream`和`OutputStream`,字符流包括`Reader`和`Writer`。`BufferedReader`和`BufferedWriter`则增加了缓冲功能,提高读写效率。例如,使用`BufferedReader`可以按行读取文件: ```java ...
标题"File Organization lec 1_java_"表明我们将讨论的是Java中关于文件组织的第一课,重点可能是讲解如何在Java中进行文本文件的读写操作。 在Java中,`java.io`包提供了大量的类来处理输入/输出(I/O)操作,包括...
Java IO 包含了字节流(InputStream 和 OutputStream)和字符流(Reader 和 Writer),分别用于处理二进制数据和文本数据。字节流适用于所有类型的数据,而字符流则更适用于处理字符编码的数据,如文本文件。 以下...
总结来说,Java中的文件操作主要依赖于`java.io`包,通过`File`、`FileReader/Writer`、`BufferedReader/Writer`等类完成。对于简单的数据文件,我们可以通过读写文件并解析内容进行查询和更新。在实际开发中,根据...
在给定的“java_readwrite_file.java.zip”压缩包中,我们关注的是一个名为“writefile.java”的文件,它应该包含一个用于在SD卡上进行读写操作的程序。在Java Card技术中,虽然主要涉及智能卡上的小型Java应用程序...
字符流则有Reader和Writer系列。 在上传音乐这样的大文件场景下,通常会使用BufferedInputStream和BufferedOutputStream进行优化。这两个类通过内部缓冲区来减少对底层IO操作的调用次数,从而提高性能。例如,我们...
它是Java.io.File类的一个子类,但在Android环境中,有一些特定的注意事项和最佳实践。以下是对`File`类在Android中的使用进行的详细说明。 ### 文件操作基础 1. **创建文件**:使用`File`类的构造函数创建一个`...
使用`java.io.File`类可以创建文件和目录。创建文件的方法是`createNewFile()`,创建目录则是`mkdir()`或`mkdirs()`。`mkdirs()`特别适用于创建多级目录,如果父目录不存在,它会自动创建。 ```java File file =...