Hallo und Willkommen.
In dieser Vorlesung möchte ich
bieten eine Lösung für unsere vorherige Herausforderung, die Konvertierung eine Datei, die
Kleinbuchstaben zu einer Datei enthält, die enthält Großbuchstaben.
In der Zwischenzeit werden wir erstellen eine temporäre Datei, also
müssen wir umbenennen und löschen und so weiter.
Und die endgültige Ausgabe für die Programm wird die Datei sein.
Wir werden das in der Datei lesen wurde bereits in Großbuchstaben umgewandelt.
Lassen Sie uns also den Code aufrufen Blöcke, erstellen Sie ein Projekt.
Ich werde neues Projekt sagen, Konsole
Anwendung, gehen Sie c und dies wird als Konvertieren von Kleinbuchstaben bezeichnet.
Wir gehen einfach zu Lass das unser Haupt sein. c.
Wir wollen sicherstellen, dass wir schaffen unser Standard-Io-Header,
weil wir lesen und schreiben werden und mit fopen und so weiter.
Was ich also immer gerne mache, ist Erstellen Sie die Datei ganz vorne.
Also hier werde ich definieren eine Konstante für meinen Dateinamen.
Nennen wir dies definieren.
Und dieses Mal nennen wir Test. Text.
Und so sagen wir einfach Dateiname ist alles Großbuchstaben.
Ich mache diese Konvention gerne.
Und dann werde ich tatsächlich Erstellen Sie den Dateinamen in unserem Projekt.
Also wieder speichere ich meine Dateien in meinem Download-Verzeichnis.
Dort sind alle meine Projekte werden gespeichert.
Und in diesem Fall haben wir ein Projekt als Konvertierung von Kleinbuchstaben bezeichnet.
Ich werde es richtig machen im
selben Verzeichnis, damit ich es von der IDE ausführen kann.
Ich werde eine neue Textdatei erstellen.
Ich werde diesen Test benennen. Text.
Und ich werde es ansprechen, und ich werde nur
ein paar Klein- und Großbuchstaben setzen.
Nehmen wir also an, Jason testet. Okay, Was auch immer ein Test ist, einige sind Großbuchstaben,
andere sind Kleinbuchstaben Endergebnis, diese
werden immer in Großbuchstaben geschrieben, eine weitere Herausforderung.
Na, bitte.
Also das Endergebnis davon Dateien werden getestet. txt-Datei mit all
diesen Großbuchstaben.
Aber wir werden es mit speichern einige Groß- und Kleinbuchstaben.
Jetzt haben wir unsere Datei erstellt Jetzt können wir
tatsächlich lesen und schreiben.
Ich werde ein paar Dateien erstellen Zeiger mit Datei alle Groß- und Kleinschreibung,
und ich werde Stern fp sagen.
Ich werde das initialisieren auf null,
und dann werde ich einen weiteren Dateizeiger erstellen Stern fp1 und auch gleich null.
Wieder brauche ich zwei hier, weil Ich werde
lesen und schreiben, um Dateien zu trennen. eine temporäre Datei im Wesentlichen.
Ich werde auch einen Charakter erstellen Variable, das ist das Zeichen,
das wir mit fgetc einlesen.
Und das lasse ich einfach gleich um auch noch oder besser noch null zu
sein, lasse ich es einfach leer.
Das erste was ich tun muss ist ich müssen
die Datei im Lesemodus für die erste Datei öffnen, die fp und ist Die zweite Datei ist eine temporäre Datei.
Also werde ich sagen, dass fp gleich fopen ist.
Ich werde das benutzen Dateinamen-Test. Text.
Also Dateiname, und ich gehe nur zum Lesen öffnen.
Und dann möchte ich machen sicher, dass dies eine Null ist.
Also werde ich sagen, ob fp gleich null, dann
werde ich nur negative 1 zurückgeben.
Dann möchte ich meine temporäre Datei erstellen.
Also hier gehe ich hin Erstellen Sie eine temporäre Datei.
Und in diesem Fall werde ich Öffnen Sie eine Datei zum Schreiben.
Also werde ich meinen fp1-Zeiger verwenden, und ich werde fopen sagen.
Diesen rufe ich einfach an temp. Text, es wird erstellt, wenn
es nicht existiert.
Und dann werde ich setzen das w, weil
ich darauf schreiben werde, schreibe nur.
Wieder was ich machen will Hier möchte ich
sicherstellen, dass fp1 nicht gleich null ist.
Also werde ich fp1 sagen.
Wenn es gleich null ist, dann bin ich einfach werde ein negatives zurückgeben.
Also habe ich jetzt zwei Dateien geöffnet, eine zum Lesen, eine zum Schreiben.
Das Schreiben ist für die temporäre Datei.
Und was ich als nächstes tun möchte, ist, dass ich möchte um mit dem Lesen aus der Datei zu beginnen
und dann alle Großbuchstaben zu schreiben.
Also möchte ich eine while-Schleife hinzufügen lesen
und ich möchte sagen, während der Zeichendatentyp ch gleich ist fgetc, und ich
möchte aus meinem Test lesen. Text, also fp und ich wollen das tun bis ich nicht das Ende der Datei erreicht habe.
Also kann ich nicht gleich eof sagen.
Eof ist eine besondere Konstante.
In meiner while-Schleife möchte ich Überprüfen Sie, ob eines der Zeichen, die ich lese, in
Kleinbuchstaben geschrieben ist.
Also möchte ich sagen, ob es sich um ein kleines ch handelt, wenn ich
ein Kleinbuchstaben finde, dann möchte
ich nur das einstellen Zeichen in Großbuchstaben.
Ich kann also sagen, dass ch gleich ch minus 32 ist.
Dadurch wird das Zeichen konvertiert zu einem Großbuchstaben.
Dann, nachdem ich es konvertiert habe, Entweder ist es konvertiert oder nicht, es ist in Großbuchstaben oder nicht,
dann ich möchte es in meine temporäre Datei schreiben.
Also hier kann ich fputc sagen.
Und ich kann nur meinen Charakter sagen dass ich schreiben möchte und den
Dateizeiger, der fp1 ist.
Also jedes Mal, wenn ich eine Figur lese, Ich schreibe es in meine temporäre Datei.
Und wenn es Kleinbuchstaben sind, konvertiere ich es in Großbuchstaben und dann schreiben.
Das Ende dieser while-Schleife ist also Ich habe eine temporäre
Datei, die alle Zeichen aus dem enthält Prüfung. Text mit Großbuchstaben.
Und so bin ich mit beiden fertig diese Dateien lesen und schreiben.
Also kann ich fclose fp und fclose fp1 sagen.
Ich möchte jetzt meine Zeit umbenennen Datei zu meinem Test. Textdatei.
Also hier kann ich einfach sagen umbenennen, Rufen Sie die Umbenennungsfunktion
auf, und ich kann temp sagen. Text das möchte ich umbenennen.
Und die, die ich will Umbenennen ist Test. Text oder verwenden Sie meine
Konstante, die Dateiname ist.
Ich habe immer noch meine temporäre Datei erstellt.
Also möchte ich die temporäre Datei löschen.
Entfernen Sie also die temporäre Datei.
Hier kann ich das Entfernen aufrufen Funktion und übergeben Sie es in temp. Text.
Und dann das Letzte, was
ich will Dazu möchte ich den Inhalt meines Tests ausdrucken. Textdatei, die wird in Großbuchstaben umgewandelt.
Anstatt fp zu schließen, weil Das deutet auf einen Test hin. Text, ich konnte es jetzt nicht
schließen, ich konnte schließe einfach fp1, weil fp1
die Temperatur war. Text und das ist der eine, die ich umbenenne und entferne.
Eigentlich muss ich schließen es, weil ich es umbenannt habe.
Also muss ich fp schließen.
Jetzt möchte ich in Zeile 43 wieder öffnen fp weil ich jetzt den inhalt lesen
und ausdrucken will.
Also kann ich fp fopen Dateiname oder sagen Entschuldigung Dateiname und ich möchte es lesen.
Also werde ich nur r sagen.
Wieder möchte ich machen sicher ist es nicht null.
Und wenn es gleich ist null, ich möchte zurückkehren.
Und ich möchte nur sagen negative zurückgeben.
Ich könnte eine Eingabe ausdrucken.
Und dann möchte ich hier lesen die Daten und drucken Sie es einfach aus.
So kann ich eine weitere while-Schleife machen.
Wir haben also noch nichts gedruckt wir
sollten in der Lage sein zu sagen, während ch gleich fgetc fp und nicht gleich eof ist.
Und was wir tun wollen, sind wir Ich möchte nur ch ausdrucken.
Wir können also Prozent c ch sagen, und dann sind wir alle fertig.
Und am Ende wieder wir Ich möchte die letzte Datei schließen, die fp ist, und
wir wollen fp gleich setzen auf null und fp1 gleich null.
Stellen wir also sicher, dass dies erstellt wird.
Also können wir loslegen.
Wir können kompilieren und ein Semikolon einfügen In der Zeile 54 hatte ich dort einen Doppelpunkt.
Also, wenn wir zurück gehen Durch diesen Code
erstellen wir einige Dateizeiger.
Wir haben unsere Konstante.
Wir öffnen eine Datei.
Wir lesen daraus.
Und während wir lesen, wir schreibe es in eine temporäre Datei.
Wir löschen dann die temporäre Datei.
Wir müssen beide Dateien löschen Wir lesen aus und die temporäre Datei, weil
wir umbenennen und entfernen müssen.
Wir können nicht umbenennen oder entfernen auf a Funktion oder auf eine Datei, die bereits geöffnet ist, so müssen
wir sie schließen.
Also öffnen wir wieder und Wir drucken die Daten aus.
Also führen wir das aus.
Wir sollten die Ausgabe mit sehen alle Zeicheninformationen von.
Wenn wir dieses Programm ausführen, Was wir sehen werden, ist, dass alles in Großbuchstaben gedruckt wird.
Also nochmal, wir führen es aus, es wird gedruckt alles in Großbuchstaben.
Wenn wir uns die Datei ansehen Scheibe können wir uns Test ansehen. Text, und wir werden feststellen, dass es
jetzt enthält alles in Großbuchstaben.
Wieder, wenn wir das ändern wollten und ändern Sie etwas mehr Kleinbuchstaben.
Also speichern wir es hier in Kleinbuchstaben Wir führen das Programm aus
und es konvertiert alles in Großbuchstaben.
Nochmals, wenn wir dies ausführen, Drucken Sie es als Großbuchstaben aus.
Wir schauen es uns an und es ist alles in Großbuchstaben.
Also ein schönes kleines Programm Dadurch werden Kleinbuchstaben
in Großbuchstaben umgewandelt.
Ziemlich einfach, wir sind Verwenden Sie
hier unsere wichtigen Funktionen, nämlich die geöffneten Dateizeiger.
Und dann benutzen wir nett fclose entfernen und umbenennen.
Und dann das Fopen und Fgetc.
Wenn Sie irgendwelche Fragen haben, bitte schreibe mir eine Email.
Ich werde diese Quelldatei als Zip speichern Datei, damit Sie einen Blick darauf werfen können.
Vielen Dank.