Попытка реализовать модуль CSV :: поваренная книга учебник для другой выборки данных - PullRequest
0 голосов
/ 22 марта 2020

Новичок ie в Rust обнаружил этот урок для чтения csv: https://docs.rs/csv/1.1.3/csv/

Я хотел использовать предложенный пример кода:

use std::error::Error;
use std::io;
use std::process;

use serde::Deserialize;

#[derive(Debug, Deserialize)]
struct Record {
    bids: Vec<[f64; 2]>,
    asks: Vec<[f64; 2]>,
    lastupdated: u64
}

fn example() -> Result<(), Box<dyn Error>> {
    let mut rdr = csv::Reader::from_reader(io::stdin());
    for result in rdr.deserialize() {
        // Notice that we need to provide a type hint for automatic
        // deserialization.
        let record: Record = result?;
        println!("{:?}", record);
    }
    Ok(())
}

fn main() {
    if let Err(err) = example() {
        println!("error running example: {}", err);
        process::exit(1);
    }
}

Но с другой выборкой данных :

asks                                  bids                           lastupdated
[[0.001013, 3], [0.001019, 500]]    [[0.001013, 9], [0.0019, 12]]    2020-03-05 00:00:19.404

Я сделал cargo build, затем ./target/debug/csvtutor < orderbooks.csv, csvtutor - это имя моей папки. Но у меня есть следующее сообщение об ошибке: error running example: CSV deserialize error: record 1 (line: 2, byte: 23): field 1: invalid digit found in string

Поскольку я новичок ie в Rust, любая помощь приветствуется, так как я застрял и не понимаю сообщение об ошибке ... Я пошел по-другому Пример кода читателя CSV, но я всегда застрял, я хотел бы понять это. Большое спасибо за помощь! (если вы считаете, что вопрос слишком глупый или слишком новый ie, пожалуйста, не помещайте бурный комментарий и просто go в другой пост, спасибо!)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...