首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >快速-CSV流转换异步

快速-CSV流转换异步
EN

Stack Overflow用户
提问于 2016-01-15 07:14:02
回答 1查看 3.4K关注 0票数 1

我试图逐行读取csv,在mongodb中查找一个值,并在将读取流管道回写流之前对其进行转换。我正在使用快速csv库进行csv解析。

当调用下面的代码段时,它会继续到转换中的行console.log,然后挂起。即使我让进程超时,我也不会得到任何错误日志记录。

我缺少什么异步流结构的原理?

或者如何从这个示例中获得一些错误信息?尝试/抓住永远不会触发。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    var db = mongojs("mongodb://127.0.0.1:27017/", ['collection']);
    fs.createReadStream(path)
    .pipe(csv.parse({headers: false}))
    //pipe the parsed input into a csv formatter
    .pipe(csv.format({headers: true}))
    //Using the transform function from the formatting stream
    .transform(function(row, next){
            console.log(row);
            db.collection.find({email: row[0].toString()}, function (err, docs) {
                console.log(docs[0]);
                console.log(err);
                if (!err && docs.length > 0) {
                    next(void 0, {
                        email: docs[0].email,
                        name: docs[0].name
                    });
                } else {
                    next(err)
                }
            });
    })
    .pipe(fs.createWriteStream("tmp/list.csv"))
    .on("finish", function() {upload();});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-20 23:02:12

Transform期望next()函数继续到下一行,但是您的代码在下一个函数上被卡住了。

试着纠正一下,

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if (!err && docs.length > 0) {
                ***perform your operation here***
                next();
            } else {
                next();
            }

PS -抱歉这么晚才回复

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34814165

复制
相关文章
python txt转换csv 快速
import csv csvFile = open("/Users/wyc/work/geneSearch/server/search/datas_train.csv",'w',newline='',encoding='utf-8') writer = csv.writer(csvFile) csvRow = [] f = open("/Users/wyc/work/geneSearch/server/search/test-20220607.txt",'r') for line in f: cs
Wyc
2022/06/12
1.5K0
何为异步流
我们使用C#中的yield关键字可以实现迭代器,使用async和await关键字可以实现异步方法。异步流是这两种功能的结合体,它用异步方式生成和消费数据的迭代器。异步流是在C#8中引入的,它以IAsyncEnumerable和IAsyncEnumerator: IAsyncDisposable两个接口为基础,这两个接口的代码如下:
喵叔
2021/12/15
3130
C# 异步流
在C#中,异步流(Async Streams)是指一种允许你以异步方式生成一系列值的技术。异步流使你能够使用异步方法生成序列,并且能够在序列生成的过程中进行异步操作。异步流通常用于处理大量的数据,例如从数据库或网络中异步读取数据。
JusterZhu
2023/10/24
2520
C# 异步流
EasyDataTransform mac (转换Excel和CSV文件)
Easy Data Transform 是一款可以转换Excel和CSV文件工具,允许您快速将表格和列表数据转换为新的和更有用的表格,将您的数据转化为信息,而无需编程。合并、拆分、清理、重复数据删除、重新格式化、分析等,无需编码。
Mac知识分享
2022/09/29
6180
将DataTable转换成CSV文件
该文介绍了如何将DataTable转换成CSV文件的方法,包括使用C#和StreamWriter等工具。
彭泽0902
2018/01/04
1.5K0
EasyDataTransform for mac(转换Excel和CSV文件)
Easy Data Transform 是一款可以转换Excel和CSV文件工具,允许您快速将表格和列表数据转换为新的和更有用的表格,将您的数据转化为信息,而无需编程。合并、拆分、清理、重复数据删除、重新格式化、分析等,无需编码。
用户10121095
2022/11/29
8300
C#8:异步流
这是一个很简单的控制台程序。它有一个NumberFactory,它可以根据传递的参数来产生一串数字(IEnumerable<int>)。然后在这个程序中把每个数字都打印出来,同时在前边显示出当前的线程ID。
用户4831957
2019/11/04
6050
Redux 异步数据流初探
用React写的项目中各组件的状态依赖关系非常复杂,为了便于管理组件的状态,使用 Redux。
一个会写诗的程序员
2018/12/13
6300
Redux 异步数据流初探
python csv文件转换成excel 脚本
def csv_to_xlsx(input,output): with open(input, encoding='ANSI') as f: read = csv.reader(f) workbook = Workbook() sheet = workbook.active l = 1 com = re.compile("(\n|\t){1,}") for line in read: st = ",".join(line) ss = re.sub(com, "\n", st) line = ss.split(",") r = 1 for i in line: sheet.cell(row =l, column = r).value=i sheet.cell(row =l, column = r).alignment=Alignment(wrapText=True) r = r + 1 l = l + 1 col_width = [] i = 0 for col in sheet.columns: for j in range(len(col)): if j == 0: col_width.append(len(str(col[j].value))) else: if col_width[i] < len(str(col[j].value)): col_width[i] = len(str(col[j].value)) i = i + 1 for i in range(len(col_width)): col_letter = get_column_letter(i+1) if col_width[i] > 100: sheet.column_dimensions[col_letter].width = 100 elif col_width[i]: if col_width[i]<=6:col_width[i]=10 sheet.column_dimensions[col_letter].width = col_width[i] workbook.save(output) # 保存Excel
用户5760343
2022/05/13
1K0
异步fifo深度计算(异步计数状态转换表)
  FIFO有同步和异步两种,同步即读写时钟相同,同步FIFO用的少,可以作为数据缓存;异步即读写时钟不相同,异步FIFO可以 解决跨时钟域的问题,在应用时需根据实际情况考虑好fifo深度即可。   与同步FIFO相同,异步FIFO也主要由五大模块组成,不同的是,异步FIFO的读写逻辑控制还包括了格雷码转换和时钟同步部分:     (1)、 FIFO写逻辑控制——产生FIFO写地址、写有效信号,同时产生FIFO写满、写错等状态信号;     (2)、 FIFO读逻辑控制——产生FIFO读地址、读有效信号,同时产生FIFO读空、读错等状态信号;     (3)、 时钟同步逻辑——通过两级DFF分别将写时钟域的写指针同步到读时钟域,将读时钟域的读指针同步到写时钟域;     (4)、 格雷码计数器——格雷码计数器中二进制计数器的低(n-1)位可以直接作为FIFO存储单元的地址指针;     (3)、 FIFO存储体(如Memory,reg等)。 其逻辑结构如下所示:
Java架构师必看
2022/04/15
1K0
异步fifo深度计算(异步计数状态转换表)
缓冲流、转换流、序列化流、Files
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/100189.html原文链接:https://javaforall.cn
全栈程序员站长
2022/06/29
3790
缓冲流、转换流、序列化流、Files
【Java】缓冲流、转换流、序列化流
昨天学习了基本的一些流,作为IO流的入门,今天我们要见识一些更强大的流。比如能够高效读写的缓冲流,能够转换编码的转换流,能够持久化存储对象的序列化流等等。这些功能更为强大的流,都是在基本的流对象基础之上创建而来的,就像穿上铠甲的武士一样,相当于是对基本流对象的一种增强。
陶然同学
2023/02/27
3410
【Java】缓冲流、转换流、序列化流
sklearn数据集转换为csv以及数据集描述
radius 半径(从中心到边缘上点的距离的平均值) texture 纹理(灰度值的标准偏差) perimeter 周长 area 面积 smoothness 平滑度(半径长度的局部变化) compactness 紧凑度(周长 ^ 2 /面积 - 1.0) concavity 凹面(轮廓的凹部的严重性) concave points 凹点(轮廓的凹部的数量) symmetry 对称性 fractal dimension 分形维数(海岸线近似 - 1)
lovelife110
2021/01/14
1.1K0
用Wolfram语言把表格图像转换为CSV格式
在该表中,水平和垂直网格线比单元格的背景更暗。FindPeaks 用于查找这些网格线的位置。getGridLines 将返回包含行和列网格坐标的两个列表的列表。
WolframChina
2019/07/31
9620
用Wolfram语言把表格图像转换为CSV格式
超大CSV文件如何最快速度解析
背景:今天被人问到一个10G的超大CSV如何最快速度读取,并插入到数据库中。一般读取文件都是单线程一直往下读,但是如果文件特别大的情况下就会很慢。如何快速读取?脑海里面"多线程"一下子就浮出水面了,想要快速读取文件,肯定得多线程一起读取。那问题来了,一个文件怎么样进行多线程读取,首先得知道每个线程要负责读取的位置,才可以多线程完整的读取一行的数据。
林老师带你学编程
2023/04/03
1.5K0
超大CSV文件如何最快速度解析
如何在 Linux 中将 CSV 文件转换为 TSV 文件?
在Linux操作系统中,可以使用各种命令和工具来处理和转换文本文件。当需要将以逗号分隔的CSV文件转换为以制表符分隔的TSV文件时,可以使用一些简单的命令和技巧来实现。本文将详细介绍如何在Linux中将CSV文件转换为TSV文件。
网络技术联盟站
2023/06/20
1.1K0
如何在 Linux 中将 CSV 文件转换为 TSV 文件?
java_缓冲流、转换流、序列化流
缓冲流的基本原理,是在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,减少系统IO次数,从而提高读写的效率。
咕咕星
2020/08/19
4340
【IO】JavaIO流:字节流、字符流、缓冲流、转换流、序列化流等
当写出的文件存在时,一般情况会对内容进行覆盖,若想续写,需要在创建文件输出流对象时设置参数。
.29.
2023/10/25
3030
【IO】JavaIO流:字节流、字符流、缓冲流、转换流、序列化流等
点击加载更多

相似问题

将DataTable转换为CSV流

93

大型csv到geojson的快速转换

11

在Kafka流中执行异步转换

11

快速异步

11

mpeg流剪辑转换为快速运动(延时)

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文