OpenHarmony三方组件:node-csv

Handpc
发布于 2023-3-16 18:59
浏览
0收藏

简介

该项目使用node-csv解析csv文件,生成csv文件。

功能说明

1.csv-generate, CSV 字符串和 Javascript 对象的灵活生成器。

2.csv-parse,将 CSV 文本转换为数组或对象的解析器。

3.csv-stringify,将记录转换为 CSV 文本的字符串化器。

4.stream-transform,简单对象转换框架,扩展原生 Node.js转换流 API。

下载安装

1.安装命令如下:

cd entry
npm install csv

使用说明

csv-stringify

import {stringify} from 'csv-stringify/browser/esm'

let content = "1 2 3 4 5"
stringify(content, (err, output) => {
    //output ->csv格式的字符串    let filePath = parentPath + '/temp.csv';
console.log(TAG + "stringify filePath::" + filePath)
    let csvStr = '\ufeff' + output
    let openSync = fileio.openSync(filePath, 0o102, 0o666);
    try {
        //使用os文件读写功能生成csv文件    let bytesWritten = fileio.writeSync(openSync, csvStr);
        this.text1 = "生成值: " + JSON.stringify(csvStr);
} catch (err) {
console.log(TAG + 'stringify write error :' + err)
}
});

csv-parse

import {parse} from 'csv-parse/browser/esm'

parseToCsvString(filePath) {
fileio.readText(filePath)
.then((input) => {
parse(input, {
                relax_column_count:     true,
                skip_empty_lines:     true
}, (err, records) => {
                this.text2 = "解析值: " + JSON.stringify(records);
});
}).catch((e) => {
console.log(TAG + 'parse read error :' + e)
})
}

csv-generate

import {generate} from 'csv-generate/browser/esm'

generateCsArray(){
generate({
        seed: 1,
        objectMode:     true,
        columns: 2,
        length: 2
}, (err, records) => {
        this.text3 = "生成CSV数据集: " + JSON.stringify(records);
});
}

csv-transform

import {transform} from 'csv-generate/browser/esm'

transformArry() {
transform([['1', '2', '3', '4'], ['a', 'b', 'c', 'd']], (record) => {
record.push(record.shift());
        return record;
}, (err, output) => {
        this.text4 = "转变CSV数据集: " + JSON.stringify(output);
});
}

注意: 由于OpenHarmony当前不支持emoji表情显示,所以当前并不支持emoji表情存储到csv中。

项目目录

/node-csv #三方库源代码
|---- entry  #框架代码
|   |---- src   
|       |---- main  
|           |---- ets  
|               |---- MainAbility  # demo代码
|                   |---- pages
|                   |---- test

兼容性

支持 OpenHarmony API version 9 及以上版本。

开源协议

本项目基于 ​​Apache License 2.0​​ ,请自由地享受和参与开源。

参与贡献

使用过程中发现任何问题都可以提 ​​Issue​​​ 给我们,当然,我们也非常欢迎你给我们发 ​​PR​​ 。


文章转载自:​​https://gitee.com/openharmony-tpc/node-csv​


分类
node-csv-master.zip 92.51K 0次下载
已于2023-3-16 18:59:05修改
收藏
回复
举报
回复
    相关推荐