Genau diese Form möchte ich haben, aber die eckigen KLammern stören mich. Da ich in C++ bisher keine Lösung dafür gefunden habe, möchte ich das Problem mit Matlab lösen.
Ich könnte die Datei einlesen, das Zeichen löschen und dann wieder in dieser Datei speichern.
Aber gibt es hierzu eine Funktion, um bestimmte Zeichen einfach zu entfernen?
meines Wissens ist es nicht möglich, mit memmapfile wirklich Zeichen zu entfernen. Ich bekomme jedenfalls eine Fehlermeldung, wenn ich es versuche. Ansonsten ist es eine sehr effiziente Art, mit Dateien zu arbeiten.
Alternativ, basierend auf jurtsches Vorschlag:
Code:
s = textscan(fopen('data.txt'), '%s', 'delimiter', '');
s = strrep(s{1}, '[', '');
s = strrep(s, ']', '');
s = strrep(s, ',', '');
fprintf(fopen('data2.txt', 'w'), '%s\n', s{:});
type data2.txt
Super, das letzte funktioiert genauso,wie ich das brauche.
darf ich jetzt eigentlich wieder schreiben.
type data1.txt, also wird quasi die eingelesene Datei wieder überschrieben.
Ein Problem habe ich jetzt noch. Dadurch, dass das wahrscheinlich als Textscan eingelesen wird, wird die Struktur zerstört beim erzeugen der neuen Datei.
Zitat:
number1
number2
a b c d1 d2
a b c d1 d2
Diese Struktur sollte so erhalten bleiben.
Muss man dazu einen Zeilenumbruchen einbringen?
Könnt Ihr mir noch als letztes bitte erklären, wo genau der Unterschied zwischen den letzten beiden Beiträgen liest.
Also dne Unterschied sehe ich natürlich, aber was macht Matlab da bzw. wo achtet Matlab jetzt darauf, dass die Strutktur des txt-files nicht verletzt wird?
Ansonsten recht herzlichen Dank. Darauf wäre ich nie gekommen.
mit textscan, macht er einen text-string daraus. versucht also text aus der datei zu extrahieren.
beim letzteren sollte er die bytes einlesen und eben nur die sachen ändern die man angegeben hatte.
so glaube ich, dass es ist.
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.