Ich erhalte sehr eigenartige Fahrzeugdaten bei der Arbeit in einer Textdatei. Die Datei hat einen großen Datenback als Speicherplatz getrennte Werte (42 Spalten,> 1.000.000 Zeilen) ; Manchmal mit +/- Zeichen. Ich schrieb einen Parser, um diese Saiten in den Vektor von Doppel in Rost und C ++ zu trennen. Führte sie beide in Release (-O3) Modus unter Windows 10 und WSL. War etwas Unidiomatisches in C ++? Unten finden Sie die Engpassfunktion: Rost -Implementierung:
/// Function separates the string of data into vector of vectors of f64 (double)
/// so that the precision is maintained
fn separate_data_to_vec(str_to_convert: &str) -> Vec {
let reader = BufReader::new(str_to_convert.as_bytes());
let mut output_vec: Vec = vec![];
for line in reader.lines() {
let line = line.expect("Coult not read line");
let mut nums_as_strs: Vec = line.split(" ").collect();
nums_as_strs.pop();
let data_nums: Vec = nums_as_strs
.iter()
.map(|v| {
let v: f64 = v.parse().unwrap_or(0.0);
v
})
.collect();
output_vec.push(data_nums);
}
output_vec
}
Ich erhalte sehr eigenartige Fahrzeugdaten bei der Arbeit in einer Textdatei. Die Datei hat einen großen Datenback als Speicherplatz getrennte Werte (42 Spalten,> 1.000.000 Zeilen) ; Manchmal mit +/- Zeichen. Ich schrieb einen Parser, um diese Saiten in den Vektor von Doppel in Rost und C ++ zu trennen. Führte sie beide in Release (-O3) Modus unter Windows 10 und WSL. War etwas Unidiomatisches in C ++? Unten finden Sie die Engpassfunktion: [b] Rost -Implementierung: [/b] [code]/// Function separates the string of data into vector of vectors of f64 (double) /// so that the precision is maintained fn separate_data_to_vec(str_to_convert: &str) -> Vec { let reader = BufReader::new(str_to_convert.as_bytes()); let mut output_vec: Vec = vec![];
for line in reader.lines() { let line = line.expect("Coult not read line"); let mut nums_as_strs: Vec = line.split(" ").collect(); nums_as_strs.pop();
let data_nums: Vec = nums_as_strs .iter() .map(|v| { let v: f64 = v.parse().unwrap_or(0.0); v }) .collect(); output_vec.push(data_nums); }
Ich habe eine Android -App (in Kotlin geschrieben), wobei der Verarbeitungscode in Rost ausgeführt wird. Ich versuche, Liste Daten an das Back-End-Rust zu senden und sie als VEC zu interpretieren....
Verwenden der Java 8 -Stream -API Wie kann ich eine Karte zum Paar List, in der der linke Paarwert die Karte und die MAP -Taste ist, und die von der linken Paarwert verflachen kann. Rechts ist der...
Ich möchte C# verwenden, um zu prüfen, ob ein String-Wert ein Wort in einem String-Array enthält.
Zum Beispiel:
string stringToCheck = text1text2text3 ;