WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Dateien umnummerieren

 

Alexx

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.07.2010, 22:04     Titel: Dateien umnummerieren
  Antworten mit Zitat      
Hallo Leute,

ich bräuchte eure Hilfe!
Folgendes Problem:
Ich habe eine Reihe von Messdaten als .sdf-Files. Sie werden von A000000.sdf bis A001999.sdf durchnummeriert. Nun möchte ich aber die Nummer jeder Datei um eins erhöhen, sodass die Reihe mit A000001.sdf anfängt und mit A002000.sdf endet.
Wie kann ich das mit einer for-Schleife machen? Ich habe bereits mit
movefile und copyfile : movefile('A00000',int2str(i),'.sdf','A00000',int2str(i+1),'.sdf'); probiert, leider taucht die Fehlermeldung auf:
??? Error using ==> copyfile
Too many input arguments.

Error in ==> Umbenennung at 8
copyfile('A00000',int2str(i),'.sdf','A00000',int2str(i+1),'.sdf');


Was mache ich falsch?

Danke im Voraus!


yankemen
Forum-Century

Forum-Century


Beiträge: 104
Anmeldedatum: 14.04.10
Wohnort: ---
Version: 32: 2008a & 2010a
     Beitrag Verfasst am: 30.07.2010, 11:12     Titel:
  Antworten mit Zitat      
Moin Alexx,

wenn Du vom A000.sdf auf A001.sdf ändern willst, dann musst Du von hinten anfangen:
A01999.sdf->A02000.sdf, A01998.sdf->A01999.sdf,...
weil es sonst passiert, dass Du die erste Datei hernimmst und damit alle anderen überschreibst.
Denn aus A00000.sdf wird A00001.sdf, DANACH wird das vorhandene A00001.sdf zu A00002.sdf. Siehst Du den Effekt?

Und der Blick in die Hilfe sagt:
Code:

copyfile('quelle','ziel');
% d.h., dass Du eher
movefile(['A00000', int2str(i-1), '.sdf'] , ['A00000', int2str(i), '.sdf']);

verwenden solltest. Dein Fehler bestand darin, dass Du 6 statt 2 Strings übergeben hast. Wenn Du sie aber zu dritt in je eine Matrix packst/ klammerst, dann wird daraus je ein String, in Summe zwei und das ist die richtige Anzahl an Übergabeparametern.

Alternativ kannst Du auch
Code:
movefile(strcat('A00000', int2str(i-1), '.sdf'), strcat( 'A00000', int2str(i-1), '.sdf'));
verwenden. Ich weiß nicht, wo die sinnvollen Unterschiede liegen.

Ciao,
yankemen
_________________

Code:
% Kommentare brauchen ein Leerzeichen nach dem %
Gibt es ein Ist und ein Wunsch-Soll? Gibt es Beispiele zum Durchprobieren? Wenn selbstgeschriebene Funktionen aufgerufen werden: können sie bitte angehangen werden? Gab es Fehlermeldungen?
Stimmen die Werte, wenn der Debugger mit Haltepunkten etc. eingesetzt wird?
Danke Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Alexx

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.07.2010, 19:05     Titel:
  Antworten mit Zitat      
Danke für die schnelle Antwort.
Die eckigen Klammern haben das Problem gelöst! Damit ich die Files nicht überschreibe, habe ich sie beim Umbenennen einfach in einen neuen Ordner verschoben.
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

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.