Verfasst am: 24.03.2017, 09:19
Titel: Datei nach Stichwörtern filtern und diese speichern.
Hallo zusammen,
habe bereits im Forum gesucht, leider nur ähnliche Themen gefunden, die mir nicht genau weitergeholfen haben. Daher nun das Thema.
Gegeben ist eine (text)datei die eingelesen und nach bestimmten Stichwörtern durchsucht werden soll. Anschließend sollen die X nachfolgenden Zeichen (als Vektor) gespeichert werden.
bisher klappt das Einlesen und das Suchen nach dem Stichwort, allerdings spuckt er mir nur aus, wo sich "Stichwort" befindet. Leider komme ich nicht weiter.
Hoff es kann jemand helfen.
Code:
filename = 'Dateicode.txt';
fid = fopen(filename, 'r'); %Datei wird gelesen
if(fid<0) %?berpr?fen ob fid g?ltig ist
fprintf('Datei %s kann nicht geoeffnet werden \n', filename);
return; %im Fehlerfall Funktion beenden
end
inputtext=textscan(fid,'%s','delimiter','\n','whitespace',' ');
Datei=inputtext{1};
Sorry für Tripleposting, aber die Editierfunktion geht nur einmal.
Habe nun eine Lösung gefunden, falls jemand ein gleiches Problem hat.
Code:
if found
b=zeros(1,7); %Erstellen leerer Vektor
for iLine = 1:1 [a,b(iLine)] = strread(Line, '%s %f%*[^\n]', 'delimiter', ' '); %leerer Vekotor mit Daten aus Stand füllen
end for iLine = 2:7 Line = fgetl(FID);
[a,b(iLine)] = strread(Line, '%s%f%*[^\n]', 'delimiter', ' '); %leerer Vekotor mit Daten aus Stand füllen
end end
habe es nun geschafft (siehe oben) die Zahlen als Vektor zu speichern.
Im weiteren Programmverlauf werden die Werte im Vektor verändert.
Ziel ist jetzt den neuen Vektor, bzw. die Werte, in der ursprünglichen Textdatei einzuschreiben und als .txt unter neuen Namen abzuspeichern.
Falls jemand eine gute Idee hat, bin ich sehr dankbar.
Natürlich werde ich weiterhin selbst suchen.
allerdings wird nur 'Stichwort' ersetzt und die restlichen Werte nicht.
Speziell nach den Werten suchen kann ich nicht, da man diese Werte nicht kennt.
Lediglich das 'Stichwort' ist ein Indikator.
Leider Leider ist das ein sehr langsamer Prozess, und in großen Datenmengen echt eine Zumutung.
Ich wäre daher sehr dankbar, wenn jemand dazu eine andere Lösung hat!
Ebenso bei dem ersten Problem dauert es einfach zu lange
Hoffe es kann jemand helfen.
Viele Grüße
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.