JAVA读写CSV文件

JAVA读写CSV文件
JAVA读写CSV文件

java文件流操作

java 文件流操作 2010-05-08 20:17:23| 分类:java SE | 标签:|字号大中小订阅 java中多种方式读文件 一、多种方式读文件内容。 1、按字节读取文件内容InputStream 读取的是字节 2、按字符读取文件内容InputStreamReader 读取的是字符 3、按行读取文件内容BufferredReader 可以读取行 4、随机读取文件内容 import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.RandomAccessFile; import java.io.Reader; public class ReadFromFile { /** * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。* @param fileName 文件的名 */ public static void readFileByBytes(String fileName){ File file = new File(fileName); InputStream in = null; try { System.out.println("以字节为单位读取文件内容,一次读一个字节:"); // 一次读一个字节 in = new FileInputStream(file); int tempbyte; while((tempbyte=in.read()) != -1){ System.out.write(tempbyte); } in.close(); } catch (IOException e) { e.printStackTrace(); return; } try { System.out.println("以字节为单位读取文件内容,一次读多个字节:"); //一次读多个字节

java创建txt文件并进行读写修改操作

java创建txt文件并进行读写修改操作 import java.io.*;/** * * 功能描述:创建TXT文件并进行读、写、修改操作* */ public class ReadWriteFile { public static BufferedReader bufread; //指定文件路径和名称 private static String path = "D:/suncity.txt"; private static File filename = new File(path); private static String readStr =""; /** * 创建文本文件. * @throws IOException * */ public static void creatTxtFile() throws IOException{ if (!filename.exists()) { filename.createNewFile(); System.err.println(filename + "已创建!"); }

} /** * 读取文本文件. * */ public static String readTxtFile(){ String read; FileReader fileread; try { fileread = new FileReader(filename); bufread = new BufferedReader(fileread); try { while ((read = bufread.readLine()) != null) { readStr = readStr + read+ "\r\n"; } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block

C#读取csv、xls、sql数据库的实现

using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.Odbc; using System.Data.OleDb; using System.Data.SqlClient; using System.IO; ///

///读取数据并返回数据集 /// public class ReadData { private string filename = null;//文件名 private string filepath = null;//路径 public ReadData() { // // TODO: 在此处添加构造函数逻辑 // } /// ///初始化文件路径 /// ///文件路径 ///文件名称 public ReadData(string cfilepath, string cfilename) { filename = cfilename; filepath = cfilepath; } /// ///读取csv格式文件 /// ///sql语句 /// public DataSet Readcsv(string sqlstr) {

java对文件名的几个操作,获取文件扩展名,去掉扩展名

java对文件名的几个操作,获取文件扩展名,去掉扩展名 /** * Return the extension portion of the file's name . * * @see #getExtension */ public static String getExtension(File f) { return (f != null) ? getExtension(f.getName()) : ""; } public static String getExtension(String filename) { return getExtension(filename, ""); } public static String getExtension(String filename) { return getExtension(filename, ""); } public static String getExtension(String filename, String defExt) { if ((filename != null) && (filename.length() > 0)) { int i = https://www.360docs.net/doc/e511979793.html,stIndexOf('.'); if ((i >-1) && (i < (filename.length() - 1))) { return filename.substring(i + 1); } } return defExt; } public static String trimExtension(String filename) { if ((filename != null) && (filename.length() > 0)) { int i = https://www.360docs.net/doc/e511979793.html,stIndexOf('.'); if ((i >-1) && (i < (filename.length()))) { return filename.substring(0, i); } } return filename; } substring(参数)是java中截取字符串的一个方法 有两种传参方式

Java 输入输出流及文件读写详解

I/O类体系 在JDK API中,基础的IO类都位于java.io包,而新实现的IO类则位于一系列以java.nio开头的包名中,这里首先介绍java.io包中类的体系结构。 按照前面的说明,流是有方向的,则整个流的结构按照流的方向可以划分为两类: 1、输入流: 该类流将外部数据源的数据转换为流,程序通过读取该类流中的数据,完成对于外部数据源中数据的读入。 2、输出流: 该类流完成将流中的数据转换到对应的数据源中,程序通过向该类流中写入数据,完成将数据写入到对应的外部数据源中。 而在实际实现时,由于JDK API历史的原因,在java.io包中又实现了两类流:字节流(byte stream)和字符流(char stream)。这两种流实现的是流中数据序列的单位,在字节流中,数据序列以byte为单位,也就是流中的数据按照一个byte一个byte的顺序实现成流,对于该类流操作的基本单位是一个byte,而对于字节流,数据序列以char为单位,也就是流中的数据按照一个char一个插入的顺序实现成流,对于该类流操作的基本单位是一个char。 另外字节流是从JDK1.0开始加入到API中的,而字符流则是从JDK1.1开始才加入到API中的,对于现在使用的JDK版本来说,这两类流都包含在API的内部。在实际使用时,字符流的效率要比字节流高一些。 在实际使用时,字符流中的类基本上和字节流中的类对应,所以在开始学习IO类时,可以从最基础的字节流开始学习。 在SUN设计JDK的IO类时,按照以上的分类,为每个系列的类设计了一个父类,而实现具体操作的类都作为该系列类的子类,则IO类设计时的四个体系中每个体系中对应的父类分别是: 字节输入流InputStream 该类是IO编程中所有字节输入流的父类,熟悉该类的使用将对使用字节输入流产生很大的帮助,下面做一下详细的介绍。 按照前面介绍的流的概念,字节输入流完成的是按照字节形式构造读取数据的输入流的结构,每个该类的对象就是一个实际的输入流,在构造时由API完成将外部数据源转换为流对象的操作,这种转换对程序员来说是透明的。在程序使用时,程序员只需要读取该流对象,就可以完成对于外部数据的读取了。

C#写的一个简单的读写CSV文件的类

CSV(Comma-Separated Values )文件即用逗号分隔的文本文件。 下面是用C#写的一个简单的读写CSV文件的类。 using System; using System.Collections.Generic; using System.IO; using System.Text; namespace CSVDemo { ///

/// CSVUtil is a helper class handling csv files. /// public class CSVUtil { private CSVUtil() { } //write a new file, existed file will be overwritten public static void WriteCSV(string filePathName,Listls) { WriteCSV(filePathName,false,ls); } //write a file, existed file will be overwritten if append = false public static void WriteCSV(string filePathName,bool append, List ls) { StreamWriter fileWriter=new StreamWriter(filePathName,append,Encoding.Default); foreach(String[] strArr in ls) { fileWriter.WriteLine(String.Join (“,",strArr) ); } fileWriter.Flush(); fileWriter.Close(); } public static List ReadCSV(string filePathName)

java读写文件避免中文乱码

1、JAVA读取文件,避免中文乱码。 /** * 读取文件内容 * * @param filePathAndName * String 如c:\\1.txt 绝对路径 * @return boolean */ public static String readFile(String filePathAndName) { String fileContent = ""; try { File f = new File(filePathAndName); if(f.isFile()&&f.exists()){ InputStreamReader read = new InputStreamReader(new FileInputStream(f),"UTF-8"); BufferedReader reader=new BufferedReader(read); String line; while ((line = reader.readLine()) != null) { fileContent += line; } read.close(); } } catch (Exception e) { System.out.println("读取文件内容操作出错"); e.printStackTrace(); } return fileContent; } 2、JAVA写入文件,避免中文乱码。 public static void writeFile(String filePathAndName, String fileContent) { try { File f = new File(filePathAndName); if (!f.exists()) { f.createNewFile(); } OutputStreamWriter write = new OutputStreamWriter(new FileOutputStream(f),"UTF-8"); BufferedWriter writer=new BufferedWriter(write); //PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(filePathAndName))); //PrintWriter writer = new PrintWriter(new FileWriter(filePathAndName)); writer.write(fileContent);

把csv文件中的数据导入SQL Server的方法

把csv文件中的数据导入SQL Server的方法? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 [sql] --修改高级参数 sp_configure 'show advanced options',1 go --允许即席分布式查询 sp_configure 'Ad Hoc Distributed Queries',1 go --如果配置的值不在合理范围(在最小值最大值范围内),那么可以强制覆盖reconfigure with override go sp_configure 'xp_cmdshell',1 go reconfigure go --创建数据库 create database wc go use wc go --建表 create table xxdd ( aa nvarchar(1000), bb nvarchar(1000), cc nvarchar(1000), dd nvarchar(1000), ee nvarchar(1000), ff nvarchar(1000) ) go

41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 /* 这里建立一个c:\wc.csv 文件,内容如下: aa,bb,cc,dd,ee,ff 42222222223432432432,32432432432432432432,2332432432,32432432432,32432432,234324 42222222223432432432,32432432432432432432,2332432432,32432432432,32432432,234324 42222222223432432432,32432432432432432432,2332432432,32432432432,32432432,234324 42222222223432432432,32432432432432432432,2332432432,32432432432,32432432,234324 */ --导出格式文件,这个是关键,数据库名称,表名称,用户名和密码,服务器ip和端口 --都改成你自己的 exec xp_cmdshell 'bcp wc.dbo.xxdd format nul -t "," -f c:\wc.fmt -c -Usa -Pyupei go --先查看要导入的数据 select * from openrowset(bulk 'c:\wc.csv', --要读取的文件路径和名称 formatfile='c:\wc.fmt', --格式化文件的路径和名称 firstrow = 2, --要载入的第一行,由于第一行是标题,所以从 --lastrow = 1000, --要载入的最后一行,此值必须大于firstro maxerrors = 10, --在加载失败之前加载操作中最大的错误数 --errorfile ='c:\wc_error1.txt', --存放错误的文件 rows_per_batch = 10000 --每个批处理导入的行数 ) as t /* aa bb cc dd ee ff 42222222223432432432 32432432432432432432 2332432432 32432432432 32432432 42222222223432432432 32432432432432432432 2332432432 32432432432 32432432 42222222223432432432 32432432432432432432 2332432432 32432432432 32432432 42222222223432432432 32432432432432432432 2332432432 32432432432 32432432 */ --最后可以 insert into 表 (列) select * from openrowset...插入数据即可 insert into xxdd (aa,bb,cc,dd,ee,ff) select * from openrowset(bulk 'c:\wc.csv', --要读取的文件路径和名称 formatfile='c:\wc.fmt', --格式化文件的路径和名称

java文件读写代码

1、按字节读取文件内容 2、按字符读取文件内容 3、按行读取文件内容 4、随机读取文件内容 public class ReadFromFile { /** * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。 */ public static void readFileByBytes(String fileName) { File file = new File(fileName); InputStream in = null; try { System.out.println("以字节为单位读取文件内容,一次读一个字节:"); // 一次读一个字节 in = new FileInputStream(file); int tempbyte; while ((tempbyte = in.read()) != -1) { System.out.write(tempbyte); } in.close(); } catch (IOException e) { e.printStackTrace(); return; } try { System.out.println("以字节为单位读取文件内容,一次读多个字节:"); // 一次读多个字节 byte[] tempbytes = new byte[100]; int byteread = 0; in = new FileInputStream(fileName); ReadFromFile.showAvailableBytes(in); // 读入多个字节到字节数组中,byteread为一次读入的字节数 while ((byteread = in.read(tempbytes)) != -1) { System.out.write(tempbytes, 0, byteread); }

matlab基本操作,读取csv文件

1、用csvread函数 注意:csvread函数只试用与用逗号分隔的纯数字文件 第一种:M = CSVREAD('FILENAME') ,直接读取csv文件的数据,并返回给M 第二种:M = CSVREAD('FILENAME',R,C) ,读取csv文件中从第R-1行,第C-1列的数据开始的数据,这对带有头文件说明的csv文件(如示波器等采集的文件)的读取是很重要的。 第三种:M = CSVREAD('FILENAME',R,C,RNG),其中RNG = [R1 C1 R2 C2],读取左上角为索引为(R1,C1) ,右下角索引为(R2,C2)的矩阵中的数据。 注意:matlab认为CSV第1行第1列的单元格坐标为(0,0) 给定一个csvlist.csv文件,其内容如下 02, 04, 06, 08, 10, 12 03, 06, 09, 12, 15, 18 05, 10, 15, 20, 25, 30 07, 14, 21, 28, 35, 42 11, 22, 33, 44, 55, 66 例1.1读取整个文件 csvread('csvlist.csv') ans = 2 4 6 8 10 12 3 6 9 12 15 18 5 10 15 20 25 30 7 14 21 28 35 42 11 22 33 44 55 66 例1.2读取第2行以下,第0列以右区域的数据 m = csvread('csvlist.dat', 2, 0) m = 5 10 15 20 25 30 7 14 21 28 35 42 11 22 33 44 55 66 例1.3读取第2行以下,第0列以右,第3行以上,第3列以左区域的数据 m = csvread('csvlist.dat', 2, 0, [2,0,3,3])

java File文件操作和文件流的详解(福哥出品)

一. 创建文件 (1)最常用的(获得一个固定路径下的文件对象) File parentFile = new File(“D:\\My Documents\\.....”);//参数是一个路径的字符串。 (2)在父目录创建一个名为child的文件对象,child 为文件对象的名字 File chileFile= new File(“D:\\My Documents\\.....”,String child); 或File chileFile= new File(parentFile,String child); 二,常见文件夹属性和方法 (1)createNewFile(); 该方法的作用是创建指定的文件。该方法只能用于创建文件,不能用于创建文 件夹,且文件路径中包含的文件夹必须存在 File file=new ("D:\\My Document\\text.txt"); file.createNewFile(); 这样就会在D盘下的My Document 创建text.txt的记事本(注意:首先得保 证D盘下有My Documen这个文件夹) (2)mkdir(); 根据File对象的名字(路径)创建一个目录(文件夹),如果是相对目录,则新建的目

录在当前目录下 (3)mkdirs(); 如果File对象名字有多级目录,则可以调用该方法一次性创建多级目录。 (4)exists(); 判断File对象指向的文件是否存在,返回一个boolean类型(5)isDirectory(); 判断File对象指向的文件是否为目录,返回一个boolean类型的值,true或者false。 (6)getName();获得文件名称(不带路径) (7)length(); 得到File对象指向文件的长度,以字节计算,返回一个长整形的值(long);注意:在 系统中,文件夹(目录)的大小为零,也就是不占用空间,使用length()时返回的是0 (8)delete(); 删除File对象所指定的文件 (9)isFile(); 判断File对象指向的文件是不是标准文件(就像图片,音乐文件等) 三,文件的属性和方法 1.File.separator 当前操作系统的名称分隔符,等于字符串“\”.

如何使用java语言向文件中输入数据和从文件中读取数据

1、文件输入流 向文件中写入数据 Sink输出流 节点流-——文件节点 FileOutStream——字节形式存储内容 FileWriter——字符型式存储内容 import java.io.*; public class P1{ public static void main(String[]args)throws Exception{ //TODO Auto-generated method stub FileOutputStream out=new FileOutputStream("text.txt"); out.write('a'); String str="Hello world"; byte[]buffer=str.getBytes(); out.write(buffer); out.write(buffer,6,5); out.close(); } } 输出:aHello world!world 2、从文件中读取数据 Source输入流 节点流——文件节点 FileReader——字符文件 FileInputStream——字节文件 import java.io.*; public class P1{ public static void main(String[]args)throws Exception{ //TODO Auto-generated method stub FileInputStream input=new FileInputStream("text.txt"); int ch=input.read();//读入一个字节 while(ch!=-1) { System.out.print((char)ch); ch=input.read(); } input.close();

【免费下载】CSV文件操作

VB6.0 CSV文件操作2008-05-27 18:04 功能:读取CSV文件的内容并导入到数据库中 环境:Access2003 语言:VBA(对于使用VB6.0同样适用) 数据库:D:\db1.mdb 数据表:test userId 数值型 userName 文本型 CSV文件:D:\test.csv (使用Excel打开) 编号姓名 123 王五 456 李"“四 789 张'三 注意,在实际处理CSV文件前,程序开发者必须了解CSV文件的真实结构。 为了说明在处理CSV文件时可能遇到的特殊情况,用于测试的CSV文件的 最后两行的“姓名”列均插入了特殊字符。 由于在显示CSV文件内容时,Excel已经对CSV文件进行了处理,因此, 上面使用Excel所看到的内容并不是CSV的真实内容。 如果使用文本编辑器打开,可以看到真实的内容为: ---------- 编号, 姓名 123, 王五 456, "李""“四" 789, 张'三 ---------- 之所以出现这样的内容,是因为我们通常使用Excel编辑CSV文件,然后 使用另存为命令保存为CSV文件。这一过程中,Excel会隐蔽地进行如下处理:1 CSV文件将Excel的同一行中不同单元格的内容使用,(半角逗号分隔开) 2 当内容中出现半角双引号时会自动被转义为两个双引号,即""; 同时内容整体的两端自动被双引号引起来。例如:李"“四-> "李""“四" 了解了数据表和CSV文件的结构,下面就可以编写代码了。 ------------------------------------------------------------ 1. Option Compare Binary 声明 作用:声明当前VB环境中字符串的比较方式 这里的Binary 声明当前VB环境中的字符串依照其在内存中的字节码来进行比较

Java流(文件读写操作)

Java流 一、流的分类 ?按数据流动方向 –输入流:只能从中读取字节数据,而不能向其写出数据 –输出流:只能向其写入字节数据,而不能从中读取数据?按照流所处理的数据类型 –字节流:用于处理字节数据。 –字符流:用于处理Unicode字符数据。 ?按照流所处理的源 –节点流:从/向一个特定的IO设备读/写数据的流。(低级流)–处理流:对已存在的流进行连接和封装的流。(高级流)二、缓冲流 ?缓冲流要“套接”在相应的节点流之上,对读写的数据提供了缓冲的功能,提高了读写的效率,同时增加了一些新的方法。 ?J2SDK提供了四种缓存流: –BufferedReader –BufferedWriter –BufferedInputStream s –BufferedOutputStream

?缓冲输入流支持其父类的mark()和reset()方法: –mark()用于“标记”当前位置,就像加入了一个书签,可以使用reset()方法返回这个标记重新读取数据。?BufferedReader提供了readLine()方法用于读取一行字符串(以\r 或\n分隔)。 ?BufferedWriter提供了newLine()用于写入一个行分隔符。 ?对于输出的缓冲流,写出的数据会先在内存中缓存,使用flush()方法将会使内存中的数据立刻写出。 三、类层次 3.1、InputStream类层次

3.2、OutputStream类层次 3.3、Reader类层次

3.4、Writer类层次 四、常用的字符流与字节流的转化 说明: 1.字节流用于读写诸如图像数据之类的原始字节流。 2.字符流用于读写诸如文件数据之类的字符流。 3.低级流能和外设交流。 4.高级流能提高效率。 5.InputStreamReader 是字节流通向字符流的桥梁。 6.OutputStreamWriter 是字符流通向字节流的桥梁。

java输入输出流和文件操作

Java IO流和文件操作Java流操作有关的类或接口: Java流类图结构:

1、File类 File类是对文件系统中文件以及文件夹进行封装的对象,可以通过对象的思想来操作文件和文件夹。 File类保存文件或目录的各种元数据信息,包括文件名、文件长度、最后修改时间、是否可读、获取当前文件的路径名,判断指定文件是否存在、获得当前目录中的文件列表,创建、删除文件和目录等方法。 构造方法摘要 File(File parent, String child) File(String pathname) File(String parent, String child) 构造函数 创建方法 1.boolean createNewFile() 不存在返回true 存在返回false 2.boolean mkdir() 创建目录 3.boolean mkdirs() 创建多级目录 删除方法 1.boolean delete() 2.boolean deleteOnExit() 文件使用完成后删除 例子1:列出指定文件夹的文件或文件夹 public class FileDemo1 { public static void main(String[] args){ File[] files =File.listRoots(); for(File file:files){

System.out.println(file); if(file.length()>0){ String[] filenames =file.list(); for(String filename:filenames){ System.out.println(filename); } } } } } 例子2:文件过滤 import java.io.File; public class FileTest2 { public static void main(String[] args) { File file = new File("file"); String[] names = file.list(); for(String name : names) { if(name.endsWith(".java")) { System.out.println(name); }

实验8 CSV数据文件操作

实验8 CSV数据文件操作 实验目的:了解CSV格式数据记录文件结构,掌握大数据量记录的查询技巧。 实验内容:编程设计一个成语接龙游戏。 具体要求如下: 1、判断输入词语是否是成语; 2、可以判断是否符合成语接龙游戏规则; 3、可以实现提示功能; 4、可以实现显示成语含义的功能; 实验步骤:(基于MFC对话框应用程序实现。) 1、界面设计 2、控件变量定义

3、创建“Idiom”类 3.1“Idiom.h”文件内容 // Idiom.h: interface for the Idiom class. // ///////////////////////////////////////////////////////////////////// / #include #if !defined(AFX_IDIOM_H__C9A16E11_19F4_4BCF_B7D0_4CCF4FA5AE2D__INCLU DED_) #define AFX_IDIOM_H__C9A16E11_19F4_4BCF_B7D0_4CCF4FA5AE2D__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 class Idiom { private: CString Idiom1[30805];//成语 CString Idiom2[30805];//读音 CString Idiom3[30805];//释义 CString Idiom4[3041];//首字 unsigned long Idiom5[3041];//首字在大表位置

java将对象保存到文件中从文件中读取对象

1.保存对象到文件中 Java语言只能将实现了Serializable接口的类的对象保存到文件中,利用如下方法即可: public static void writeObjectToFile(Object obj) { File file =new File("test.dat"); FileOutputStream out; try { out = new FileOutputStream(file); ObjectOutputStream objOut=new ObjectOutputStream(out); objOut.writeObject(obj); objOut.flush(); objOut.close(); System.out.println("write object success!"); } catch (IOException e) { System.out.println("write object failed"); e.printStackTrace(); } } 参数obj一定要实现Serializable接口,否则会抛出 java.io.NotSerializableException异常。另外,如果写入的对象是一个容器,例如List、Map,也要保证容器中的每个元素也都是实现了Serializable 接口。例如,如果按照如下方法声明一个Hashmap,并调用writeObjectToFile方法就会抛出异常。但是如果是 Hashmap就不会出问题,因为String类已经实现了Serializable接口。另外如果是自己创建的类,如果继承的基类没有实现Serializable,那么该类需要实现Serializable,否则也无法通过这种方法写入到文件中。 Object obj=new Object(); //failed,the object in map does not implement Serializable interface HashMap objMap=new HashMap(); objMap.put("test", obj); writeObjectToFile(objMap);

Java 对文件读写操作

Java 对文件进行读写操作的例子很多,让初学者感到十分困惑,我觉得有必要将各种方法进行 一次分析,归类,理清不同方法之间的异同点。 一.在JDK 1.0 中,通常是用InputStream & OutputStream 这两个基类来进行读写操作的。InputStream 中的FileInputStream 类似一个文件句柄,通过它来对文件进行操作,类似的,在 OutputStream 中我们有FileOutputStream 这个对象。 用FileInputStream 来读取数据的常用方法是: FileInputStream fstream = new FileInputStream(args[0]); DataInputStream in = new DataInputStream(fstream); 用in.readLine() 来得到数据,然后用in.close() 关闭输入流。 完整代码见Example 1。 用FileOutputStream 来写入数据的常用方法是: FileOutputStream out out = new FileOutputStream("myfile.txt"); PrintStream p = new PrintStream( out ); 用p.println() 来写入数据,然后用p.close() 关闭输入。 完整代码见Example 2。 二.在JDK 1.1中,支持两个新的对象Reader & Writer,它们只能用来对文本文件进行操作,而 JDK1.1中的InputStream & OutputStream 可以对文本文件或二进制文件进行操作。 用FileReader 来读取文件的常用方法是: FileReader fr = new FileReader("mydata.txt"); BufferedReader br = new BufferedReader(fr); 用br.readLing() 来读出数据,然后用br.close() 关闭缓存,用fr.close() 关闭文件。 完整代码见Example 3。 用FileWriter 来写入文件的常用方法是: FileWriter fw = new FileWriter("mydata.txt"); PrintWriter out = new PrintWriter(fw); 在用out.print 或out.println 来往文件中写入数据,out.print 和out.println的唯一区别是后者写 入数据或会自动开一新行。写完后要记得用out.close() 关闭输出,用fw.close() 关闭文件。完整代码见Example 4。 -------------------------------------------------------------- following is the source code of examples------------------------------------------------------ Example 1:

CSV文件的内容并导入到数据库中

功能:读取CSV文件的内容并导入到数据库中 环境:Access2003 语言:VBA(对于使用VB6.0同样适用) 数据库:D:\db1.mdb 数据表:test userId 数值型 userName 文本型 CSV文件:D:\test.csv (使用Excel打开) 编号姓名 123 王五 456 李"“四 789 张'三 注意,在实际处理CSV文件前,程序开发者必须了解CSV文件的真实结构。 为了说明在处理CSV文件时可能遇到的特殊情况,用于测试的CSV文件的 最后两行的“姓名”列均插入了特殊字符。 由于在显示CSV文件内容时,Excel已经对CSV文件进行了处理,因此, 上面使用Excel所看到的内容并不是CSV的真实内容。 如果使用文本编辑器打开,可以看到真实的内容为: ---------- 编号, 姓名 123, 王五 456, "李""“四" 789, 张'三 ---------- 之所以出现这样的内容,是因为我们通常使用Excel编辑CSV文件,然后 使用另存为命令保存为CSV文件。这一过程中,Excel会隐蔽地进行如下处理:1 CSV文件将Excel的同一行中不同单元格的内容使用,(半角逗号分隔开) 2 当内容中出现半角双引号时会自动被转义为两个双引号,即""; 同时内容整体的两端自动被双引号引起来。例如:李"“四-> "李""“四" 了解了数据表和CSV文件的结构,下面就可以编写代码了。 ------------------------------------------------------------ 1. Option Compare Binary 声明 作用:声明当前VB环境中字符串的比较方式 这里的Binary 声明当前VB环境中的字符串依照其在内存中的字节码来进行比较如果你使用的是普通VB6.0环境,默认的字符串比较就是依照字节码比较

相关文档
最新文档