string file = @"c:\temp\test.parquet";
var dataFields = new DataField[2];
dataFields[0] = new DataField("dtUTC", DataType.Int64);
dataFields[1] = new DataField("val", DataType.Double);
var schema = new ParquetSchema(dataFields);
var dtUTC = new long[3];
var val = new double[3];
using (Stream fileStream = System.IO.File.OpenWrite(file))
{
using (var parquetWriterTask = ParquetWriter.CreateAsync(schema, fileStream))
{
parquetWriterTask.Wait();
var parquetWriter = parquetWriterTask.Result;
using (ParquetRowGroupWriter groupWriter = parquetWriter.CreateRowGroup())
{
var col0 = Array.CreateInstance(typeof(long), dtUTC.Length);
for(int i=0;i< dtUTC.Length;i++) col0.SetValue(dtUTC[i], i);
var writeT = groupWriter.WriteColumnAsync(new Parquet.Data.DataColumn(dataFields[0], col0));
writeT.Wait();
var col1 = Array.CreateInstance(typeof(double), val.Length);
for (int i = 0; i < val.Length; i++) col1.SetValue(val[i], i);
var writeT2 = groupWriter.WriteColumnAsync(new Parquet.Data.DataColumn(dataFields[1], col1));
writeT2.Wait();
}
}
}
< /code>
Wenn ich jedoch versuche, diese Datei zu lesen, entweder mit einer Drittanbieter -Anwendung oder meinem unten gezeigten Code, erhalte ich Fehler in der Zeile von < /p>
Das Ziel ist zu kurz. Der Stream < /p>
< /blockquote>
(abhängig davon, welche Anwendung ich zum Lesen der Datei verwendet) < /p>
Der Code, den ich zum Lesen verwenden, ist: < /p>
using (Stream file = System.IO.File.OpenRead(fileName))
{
using (var readerTask = ParquetReader.CreateAsync(file))
{
readerTask.Wait();
var reader = readerTask.Result;
if (reader.RowGroupCount != 1) throw new Exception("reader.RowGroupCount = " + reader.RowGroupCount);
var dataFields = reader.Schema.GetDataFields();
using (var gr = reader.OpenRowGroupReader(0))
{
Parquet.Data.DataColumn[] columns = parquet.getCols(gr, dataFields);// dataFields.Select(gr.ReadColumn).ToArray();
output($"\tGroup 0: columns.Length={columns.Length}");
}
}
}
Was mache ich beim Schreiben dieser Parquetendatei falsch?
Ich habe kürzlich Parquet.net auf Version 4.6.0 aktualisiert, was eine Menge der Methodenanrufe zu ihren asynchronen Versionen erfordert.[code] string file = @"c:\temp\test.parquet"; var dataFields = new DataField[2]; dataFields[0] = new DataField("dtUTC", DataType.Int64); dataFields[1] = new DataField("val", DataType.Double); var schema = new ParquetSchema(dataFields); var dtUTC = new long[3]; var val = new double[3];
using (Stream fileStream = System.IO.File.OpenWrite(file)) { using (var parquetWriterTask = ParquetWriter.CreateAsync(schema, fileStream)) { parquetWriterTask.Wait(); var parquetWriter = parquetWriterTask.Result; using (ParquetRowGroupWriter groupWriter = parquetWriter.CreateRowGroup()) { var col0 = Array.CreateInstance(typeof(long), dtUTC.Length); for(int i=0;i< dtUTC.Length;i++) col0.SetValue(dtUTC[i], i); var writeT = groupWriter.WriteColumnAsync(new Parquet.Data.DataColumn(dataFields[0], col0)); writeT.Wait(); var col1 = Array.CreateInstance(typeof(double), val.Length); for (int i = 0; i < val.Length; i++) col1.SetValue(val[i], i); var writeT2 = groupWriter.WriteColumnAsync(new Parquet.Data.DataColumn(dataFields[1], col1)); writeT2.Wait(); } } } < /code> Wenn ich jedoch versuche, diese Datei zu lesen, entweder mit einer Drittanbieter -Anwendung oder meinem unten gezeigten Code, erhalte ich Fehler in der Zeile von < /p>
Das Ziel ist zu kurz. Der Stream < /p> < /blockquote> (abhängig davon, welche Anwendung ich zum Lesen der Datei verwendet) < /p> Der Code, den ich zum Lesen verwenden, ist: < /p> using (Stream file = System.IO.File.OpenRead(fileName)) { using (var readerTask = ParquetReader.CreateAsync(file)) { readerTask.Wait(); var reader = readerTask.Result; if (reader.RowGroupCount != 1) throw new Exception("reader.RowGroupCount = " + reader.RowGroupCount); var dataFields = reader.Schema.GetDataFields(); using (var gr = reader.OpenRowGroupReader(0)) { Parquet.Data.DataColumn[] columns = parquet.getCols(gr, dataFields);// dataFields.Select(gr.ReadColumn).ToArray(); output($"\tGroup 0: columns.Length={columns.Length}"); } } } [/code] Was mache ich beim Schreiben dieser Parquetendatei falsch?
Ziel:
Rendern Sie die geeignete Schriftstärke für die Schriftfamilie Proxima Nova in Firefox und (Headless)Chrome unter macOS für lokale visuelle Vergleichstests der Webseite.
/> Info:
Ich habe eine mittelgroße Anwendung mit einer Tabelle und eine Funktion der Tabelle ist die Möglichkeit, auf eine Schaltfläche zu klicken, die eine Ansicht dieser Zeile in Form eines Muddialogs...
Ich arbeite an einem Unity 3D-Projekt und habe ein Problem mit dem Springen von Spielern. Der Spieler kann nur einmal springen und nach dem ersten Sprung nicht mehr springen, selbst nachdem er wieder...
Ich habe eine C#-Anwendung (.NET Core 4) und habe den folgenden LINQ-Ausdruck geschrieben, um eine Liste der zugewiesenen Tickets aus der Datenbankansicht abzurufen.
public async Task...