如何在Chapel中逐行读取文件

时间:2018-03-30 15:52:21

标签: chapel

我没有看到在教堂File I/O primer中逐行阅读文件的示例。假设我有一个csv data.csv

NAME,RANK,SERIAL_NUMBER
Bootsy Collins,Bassist,8ntNoThing
Chappie,Robot,3.14159
Orange,Flavor,54321

我希望逐行阅读并沿途拆分。像

这样的东西
 for line in file.lines {
    var (name, rank, serialNumber) = line.split(',')

最简洁的方法是什么?

1 个答案:

答案 0 :(得分:3)

Lower down in the documentation,它给出了以下示例代码(我从前一个代码块中拉出第一行):

var f = open(testfile, iomode.cwr);
var r = f.reader();
var line:string;
while( r.readline(line) ) {
   write("Read line: ", line);
}
r.close();

我之前从未写过Chapel,所以假设你的代码片段是正确的,我认为这看起来像:

var f = open(testfile, iomode.cwr);
var r = f.reader();
var line:string;
while( r.readline(line) ) {
   var (name, rank, serialNumber) = line.split(',')
}
r.close();