首页 > 解决方案 > Reat native - 如何从链接中获取 CSV 数据?

问题描述

  1. 下面的 Java 代码将从 yahoo Finance 中提取历史股票数据,但输出文件是一个 CSV 文件,正在逐行读取并打印在屏幕上。

  2. 但我想在 React Native 中做同样的事情。

  3. 如果你们能在本机反应中帮助我编写相同的代码,那将会很有帮助。

     String link="https://query1.finance.yahoo.com/v7/finance/download/TSLA?period1=1563992913&period2=1595615313&interval=1d&events=history";
    
     URL url = new URL(link);
     URLConnection urlConn = url.openConnection();
     InputStreamReader inStream = new InputStreamReader(urlConn.getInputStream());
     BufferedReader buf = new BufferedReader(inStream);
    
    
     String line =buf.readLine();
     while(line != null) {
         System.out.println(line);
         line=buf.readLine();
     }
    

这是链接内的数据:

日期、开盘价、最高价、最低价、收盘价、Adj 收盘价、成交量

2019-07-24,259.170013,266.070007,258.160004,264.880005,264.880005,11072800

2019-07-25,233.500000,234.500000,225.550003,228.820007,228.820007,22418300

2019-07-26,226.919998,230.259995,222.250000,228.039993,228.039993,10027700

2019-07-29,227.089996,235.940002,226.029999,235.770004,235.770004,9273300

标签: reactjsdatabasereact-nativeurlmobile

解决方案


您可以使用诸如Papa parse之类的库来执行此操作。它还将为您解析数据。

如果我们从这里举个例子,你可以做这样的事情(假设你还想将数据打印到控制台):

import Papa from "papaparse"

const link = "https://query1.finance.yahoo.com/v7/finance/download/TSLA?period1=1563992913&period2=1595615313&interval=1d&events=history"

Papa.parse(link, {
    download: true,
    complete: results => console.log(results),
})

推荐阅读