AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Beratung und Hilfe Array Speichern

Ein Thema von IltisvdT · begonnen am 3. Mai 2013 · letzter Beitrag vom 3. Mai 2013
Antwort Antwort
Seite 1 von 3  1 23      
IltisvdT

Registriert seit: 19. Jan 2013
10 Beiträge
 
#1

Beratung und Hilfe Array Speichern

  Alt 3. Mai 2013, 07:09
Hallo,
ich benötige einmal mehr eure Beratung und Hilfe. Ich habe einige Daten und möchte ie gerne speichern. Soweit so gut. Es handelt sich ausschließlich um Zahlenwerte (int und double). Es ist aber ein Mischmasch aus einzelnen Variablen und eindmensionalen Arrays. Diese wüde ich nun gerne speichern. Mein Anspruch ist aber, dass ich die Daten in einem externen Programm auch bearbeiten kann. Hier im Forum wird dafür eine csv vorgeschlagen. Nicht so wichtig ist mir die Darstellungsform. Soll heißen, dass es nicht sofort ersichtlich sein muss, welche Zahl für was steht. Könnt ihr mir Tipps geben, wo ich etwas darüber lesen kann? Oder mir vielleicht auch Codebrocken zur Verfügung stellen? Vielen Dank
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Beratung und Hilfe Array Speichern

  Alt 3. Mai 2013, 07:18
Zum externen Bearbeiten wirst Du um eine Speicherung in Textform wohl nicht herumkommen. Geeignete Formate könnten z.B. XML, JSON oder ggf. sogar IniFiles sein. Da es sich nach meiner Lesart anscheinend um irgendwie verschachtelte Daten handeln könnte, halte ich CSV hier für nicht so optimal, aber da kann ich auch irren.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.130 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: Beratung und Hilfe Array Speichern

  Alt 3. Mai 2013, 07:34
Wie wäre es damit die Daten einfach in eine Datei auf die Platte zu schreiben?

Mavarik
  Mit Zitat antworten Zitat
IltisvdT

Registriert seit: 19. Jan 2013
10 Beiträge
 
#4

AW: Beratung und Hilfe Array Speichern

  Alt 3. Mai 2013, 07:44
Wie wäre es damit die Daten einfach in eine Datei auf die Platte zu schreiben?

Mavarik
genau das habe ich vor.

Zum externen Bearbeiten wirst Du um eine Speicherung in Textform wohl nicht herumkommen. Geeignete Formate könnten z.B. XML, JSON oder ggf. sogar IniFiles sein. Da es sich nach meiner Lesart anscheinend um irgendwie verschachtelte Daten handeln könnte, halte ich CSV hier für nicht so optimal, aber da kann ich auch irren.
Verschachtelt...kann ich nicht genau beurteilen. Es sind auch nicht viele Werte. 2 Integervariablen, 1 array of integer und ein array of double. Wenn ich das so gespeichert kriegen würde, dass ich es mit nem Editor oder excel oder was immer öffnen und bearbeiten kann wäre das toll. Dabei würde ich mir das so vorstellen, dass jede neue Variable eine Zeile kriegt, sodass da zwei Einzelwerte untereinanderstehen und dann je ein Array über die ganze Zeile.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.755 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Beratung und Hilfe Array Speichern

  Alt 3. Mai 2013, 07:47
Guten Morgen,

du solltestt schon wissen, welche Programme die Datei lesen können sollen.
Das grenzt das Abspeicherformat in der Regel stark ein.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Beratung und Hilfe Array Speichern

  Alt 3. Mai 2013, 07:53
Wenn Du es nicht aufwändig machen magst, nimm eine TStringList, schreibe die Werte mit Add(Zahl) und die Arrays mit Add(Zahl, Zahl, Zahl) dann SaveToFile und du hast schnell eine einfache Textdatei zum bearbeiten.
  Mit Zitat antworten Zitat
IltisvdT

Registriert seit: 19. Jan 2013
10 Beiträge
 
#7

AW: Beratung und Hilfe Array Speichern

  Alt 3. Mai 2013, 08:15
Guten Morgen,

du solltestt schon wissen, welche Programme die Datei lesen können sollen.
Das grenzt das Abspeicherformat in der Regel stark ein.

Grüße
Klaus
Ok, da geb ich dir recht. Ein normaler Editor sollte immer funktionieren. Alles was darüber hinaus geht ist Spielerei.

Wenn Du es nicht aufwändig machen magst, nimm eine TStringList, schreibe die Werte mit Add(Zahl) und die Arrays mit Add(Zahl, Zahl, Zahl) dann SaveToFile und du hast schnell eine einfache Textdatei zum bearbeiten.
Mit "nicht zu aufwändig" triffst du es sehr gut. Sowas in der Art hatte ich auch schon gefunden. Nur funktioniert das auch halbwegs gut mit Arrays? Denn die Arrays können mitunter lang werden und sind auch unterschiedlich lang. Von daher würde ich ungern add(array[o],array[1],...) schreiben.
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Beratung und Hilfe Array Speichern

  Alt 3. Mai 2013, 08:20
so in der Art meinte ich:

Delphi-Quellcode:
s := '';
for i := 0 to x do
begin
  if i > 0 then s := s + ',';
  s := s + IntToStr(Array[i]);
end;
aStringList.Add(s);
  Mit Zitat antworten Zitat
IltisvdT

Registriert seit: 19. Jan 2013
10 Beiträge
 
#9

AW: Beratung und Hilfe Array Speichern

  Alt 3. Mai 2013, 08:22
Wow. Vielen Dank. Das sieht vielversprechend aus. Werde es gleich mal probieren.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#10

AW: Beratung und Hilfe Array Speichern

  Alt 3. Mai 2013, 08:23
Es kommt immer auf die Interpretation der Daten an.

Beispiel:

Ein Texteditor zeigt für eine Datei folgendes an
Code:
42
Preisfrage: Welche Zahl ist dort in der Datei gespeichert?

Antwort: 3276852 (Integer)

Warum nicht 42?

Die Datei beinhaltet folgende Bytes
Code:
00 34 00 32
Mit einem Texteditor werden diese Bytes interpretiert als Text (UTF-8 ohne BOM) und dadurch als 42 angezeigt.
Mein Programm hat aber den Integer-Wert 3276852 dort gespeichert.
Delphi-Quellcode:
program WriteData;

{$APPTYPE CONSOLE}
{$R *.res}

uses
  System.SysUtils, Classes;

var
  Stream : TStream;
  Data : Integer;

begin
  try
    Data := 3276852;

    Stream := TFileStream.Create( 'test.dat', fmCreate );
    try
      Stream.WriteData( Data );
    finally
      Stream.Free;
    end;

  except
    on E : Exception do
      Writeln( E.ClassName, ': ', E.Message );
  end;

end.
Entweder die Struktur der Datei ist dem Programm komplett bekannt, oder es müssen halt Strukturinformationen mit in die Datei (so wie bei XML, JSON, etc.). Dann muss das Programm nur noch wissen, um welches Format es sich handelt und kann die restlichen Strukturinformationen dort herauslesen.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo ( 3. Mai 2013 um 08:26 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz