Skip to content

informat.csv csv相关

概述

使用informat.csv执行csv文件的读写操作

CsvReader

reader

从本地沙盒中读取csv文件,如果文件不存在将会抛出异常

javascript
informat.csv.reader(file)
参数类型描述
fileStringapp的沙盒环境中的文件地址

返回值

类型为CsvReader

示例

javascript
const reader = informat.csv.reader('path/to/file.csv')

setFieldSeparator

设置字段分隔符

js
reader.setFieldSeparator(c)

提示

  • 默认分隔符是逗号,
参数类型描述
cchar字段分隔符

示例

js
reader.setFieldSeparator(',')

setQuoteCharacter

设置引号字符

js
reader.setQuoteCharacter(c)

提示

  • 默认是双引号"
参数类型描述
cchar引号字符

示例

js
reader.setQuoteCharacter('\"')

setCommentCharacter

设置注释字符,

js
reader.setCommentCharacter(c)

提示

  • 默认注释字符#
参数类型描述
cchar注释字符

示例

js
reader.setCommentCharacter('#')

setCommentStrategy

设置注释策略

js
reader.setCommentStrategy(s)
参数类型描述
sStringNONE,SKIP,READ

策略描述:

策略描述
NONE不检测注释 - 将所有内容都视为普通的单元格内容,默认值
SKIP检测注释,但不返回注释行
READ检测注释并返回注释行(整行作为一个字段)。注释字符本身将被去除

示例

js
reader.setCommentStrategy('NONE')

setSkipEmptyRows

设置是否忽略空行

js
reader.setSkipEmptyRows(f)
参数类型描述
fBoolean是否忽略空行

示例

js
reader.setSkipEmptyRows(true)

setErrorOnDifferentFieldCount

设置是否在遇到列数不一致时抛出异常

js
reader.setErrorOnDifferentFieldCount(f)
参数类型描述
fBoolean是否抛出异常

示例

js
reader.setErrorOnDifferentFieldCount(true)

setCharset

设置字符集(默认字符集:UTF-8)

js
reader.setCharset(charset)
参数类型描述
charsetString字符集,eg:UTF-8,GBK

示例

js
reader.setCharset('UTF-8')

read

读取csv文件

js
reader.read(accept)
参数类型描述
acceptFunction(CsvRow)每一行的处理函数

示例

js
let reader = informat.csv.reader('path/to/file.csv');
reader.read((csvRow)=>{
    for(let i = 0; i < csvRow.getFieldCount(); i++){
        console.log(csvRow.getField(i))
    }
})

CsvRow

getOriginalLineNumber

返回行号

js
csvRow.getOriginalLineNumber()

getField

返回字段

js
csvRow.getField(index)
参数类型描述
indexInteger索引

getFields

返回字段列表

js
csvRow.getFields()

getFieldCount

返回字段数量

js
csvRow.getFieldCount()

isComment

本行是否是注释

js
csvRow.isComment()

isEmpty

本行是否是空行

js
csvRow.isEmpty()

CsvWriter

writer

获取输入对象,将内容写入到本地沙盒的csv文件中

javascript
informat.csv.writer(file)
参数类型描述
fileStringapp的沙盒环境中的文件地址

返回值

类型为CsvWriter

示例

js
let writer=informat.csv.writer('path/to/file.csv');
writer.writeRow(['a','b','c','d']);
writer.writeRow(['1','2','3','4']);
writer.close();

setCharset

设置字符集

js
writer.setCharset(charset)

提示

默认字符集:UTF-8

参数类型描述
charsetString字符集,eg:UTF-8,GBK

示例

js
writer.setCharset('UTF-8')

setFieldSeparator

设置字段分隔符

js
writer.setFieldSeparator(c)

提示

默认分隔符是逗号,

参数类型描述
cchar字段分隔符

示例

js
writer.setFieldSeparator()

setQuoteCharacter

设置引号字符,默认是双引号(")

js
writer.setQuoteCharacter(c)

提示

默认是双引号"

参数类型描述
cchar引号字符

示例

js
writer.setQuoteCharacter()

setQuoteStrategy

设置引号策略

js
writer.setQuoteStrategy(s)
参数类型描述
sStringREQUIRED,EMPTY,ALWAYS

策略描述:

策略描述
REQUIRED该策略要求所有的字段都必须使用引号 ,默认值
EMPTY该策略要求只有在字段中包含逗号或换行符时才需要使用引号
ALWAYS该策略要求所有的字段都始终使用引号

示例

js
writer.setQuoteStrategy('REQUIRED')

setCommentCharacter

设置注释字符,默认注释字符是(#)

js
writer.setCommentCharacter(c)
参数类型描述
cchar注释字符

setLineDelimiter

设置行定界符,默认是(CRLF)

js
writer.setLineDelimiter(s)
参数类型描述
sString行定界符

行定界符

定界符描述
CRLF对应\r\n,默认值
CR对应\r
LF对应\n
PLATFORM系统默认

示例

js
writer.setLineDelimiter('CRLF')

writeRow

写入一行数据

js
writer.writeRow(row)
参数类型描述
rowArray<String>内容的数组

writeComment

写入注释行

js
writer.writeComment(comment)
参数类型描述
commentString注释内容

示例

js
writer.writeComment('注释内容')

close

关闭输入流

js
writer.close()