如何使用Type脚本读取几个木板文件



我有一个带有parquet文件的文件夹。

如何全部读取它们并转换为1个大TXT文件?

我正在使用parquetjs库来读取1个文件:

(
    async () => {
        // create new ParquetReader that reads from 'fruits.parquet`
        let reader = await parquet.ParquetReader.openFile('fruits.parquet');
        // create a new cursor
        let cursor = reader.getCursor();
        // read all records from the file and print them
        let record = null;
        while (record = await cursor.next()) {
            console.log(record);
        }
    }
) ();

需要帮助一次读取几个文件并组合它们。

  1. aynsc函数转换为filename参数。使函数返回record
  2. 创建filename的数组
  3. 使用Array.mapfilename数组转换为Promise数组
  4. 使用 Promise.all等待读取所有文件
  5. 使用String.join将所有record S组合到一个字符串中

async函数转换为filename

async文件转换为filename参数

const readFile = async(filename) => {
  let reader = await parquet.ParquetReader.openFile(filename);
  let cursor = reader.getCursor();
  let record = '';
  let currentContent = '';
  while (currentContent = await cursor.next()) {
    record += currentContent;
  }
  return record;
};

阅读并组合所有文件

const filenames = ['f1.parquet', 'f2.parquet', 'f3.parquet'];
const readPromises = filenames.map(f => readFile(f));
const allPromises = Promise.all(readPromises);
// Read and combine
allPromises.then(contentsArray => contentsArray.join('n'))
  .then(joinedContent => console.log(joinedContent))
  .catch(console.error);

最新更新