﻿1
00:00:01,410 --> 00:00:03,890
‫Sprecher: Dies ist eine wirklich spannende

2
00:00:03,890 --> 00:00:07,230
‫Vorlesung, denn Sie werden lernen, wie man Daten aus

3
00:00:07,230 --> 00:00:10,393
‫Dateien liest und auch Daten in Dateien schreibt.

4
00:00:12,110 --> 00:00:15,050
‫Und wir haben das eingebaute Modul, das wir

5
00:00:15,050 --> 00:00:17,450
‫dafür brauchen, bereits in der

6
00:00:17,450 --> 00:00:20,910
‫letzten Vorlesung importiert, und lassen Sie uns diesen Code

7
00:00:20,910 --> 00:00:23,990
‫jetzt loswerden und beginnen, das FS-Modul zu verwenden.

8
00:00:23,990 --> 00:00:26,707
‫Also verwenden wir fs. readfilesync, ok.

9
00:00:30,720 --> 00:00:34,250
‫Und sync steht für synchron, und Sie

10
00:00:34,250 --> 00:00:36,210
‫werden gleich im

11
00:00:36,210 --> 00:00:40,240
‫nächsten Video anfangen, synchron und asynchron zu lernen, okay.

12
00:00:40,240 --> 00:00:43,760
‫Dies ist also die synchrone Version des Dateilesens.

13
00:00:43,760 --> 00:00:47,040
‫Es gibt auch eine asynchrone Version.

14
00:00:47,040 --> 00:00:50,880
‫Die Funktion zum Lesen der Dateisynchronisierung benötigt also zwei Argumente.

15
00:00:50,880 --> 00:00:54,640
‫Der erste ist der Pfad zu der Datei, die wir

16
00:00:54,640 --> 00:00:57,300
‫lesen, und dann auch das codierte Zeichen.

17
00:00:57,300 --> 00:00:59,700
‫Also, zuerst der Pfad

18
00:00:59,700 --> 00:01:02,163
‫zur Datei, und die Datei befindet

19
00:01:04,130 --> 00:01:06,973
‫sich im txt-Ordner und ist die Eingabe.

20
00:01:08,170 --> 00:01:12,260
‫Also, diesen Text, den ich hier über die Avocado habe, ist

21
00:01:12,260 --> 00:01:15,740
‫das, was wir in eine Variable einlesen werden.

22
00:01:15,740 --> 00:01:18,060
‫Und ich bin mir nicht sicher, ob

23
00:01:18,060 --> 00:01:21,950
‫Sie dieses Emoji hier direkt auf Ihrem Betriebssystem sehen können, aber

24
00:01:21,950 --> 00:01:24,710
‫wenn Sie Windows 8 oder Windows 10 verwenden,

25
00:01:24,710 --> 00:01:26,960
‫wird das wahrscheinlich gut funktionieren.

26
00:01:28,000 --> 00:01:31,420
‫Okay, wir haben dort einen Pfad angegeben, und es gibt

27
00:01:31,420 --> 00:01:33,730
‫mehrere Möglichkeiten, dies zu tun,

28
00:01:33,730 --> 00:01:36,573
‫aber jetzt werde ich mit dem einfachsten gehen.

29
00:01:37,490 --> 00:01:42,490
‫Also, alles was ich tun werde, ist es in /txt/input zu setzen. TXT.

30
00:01:47,460 --> 00:01:50,470
‫Wir beginnen also wieder mit dem Home-Ordner, der im Grunde

31
00:01:50,470 --> 00:01:52,100
‫der Ordner ist, in dem

32
00:01:52,100 --> 00:01:55,350
‫sich der Index befindet. js-Datei befindet, das ist also

33
00:01:55,350 --> 00:01:57,430
‫der Punkt darin, und dann bewegen

34
00:01:57,430 --> 00:02:00,060
‫wir uns in den txt-Ordner und geben von

35
00:02:00,060 --> 00:02:02,633
‫dort aus ein. TXT.

36
00:02:03,670 --> 00:02:05,080
‫Dann müssen

37
00:02:05,080 --> 00:02:07,550
‫wir hier als zweites die Zeichencodierung

38
00:02:07,550 --> 00:02:10,320
‫definieren, die normalerweise utf8 ist, zumindest

39
00:02:10,320 --> 00:02:12,710
‫wenn Sie nur Englisch verwenden.

40
00:02:12,710 --> 00:02:15,200
‫Okay, und wenn Sie dies nicht angeben, erhalten

41
00:02:15,200 --> 00:02:18,770
‫wir einen sogenannten Puffer zurück, okay, und das ist nicht wirklich

42
00:02:18,770 --> 00:02:20,210
‫das, was wir wollen.

43
00:02:20,210 --> 00:02:22,900
‫Wir wollen wirklich nur den Text.

44
00:02:22,900 --> 00:02:26,770
‫Wenn Sie diese Funktion hier aufrufen, werden nun die Daten aus

45
00:02:26,770 --> 00:02:29,980
‫der Datei gelesen und an uns zurückgegeben, und

46
00:02:29,980 --> 00:02:31,600
‫wir müssen diese

47
00:02:31,600 --> 00:02:34,083
‫irgendwo speichern und in eine Variable einfügen.

48
00:02:35,200 --> 00:02:40,200
‫Sagen wir also textIn, weil es eher eine Texteingabe ist.

49
00:02:43,430 --> 00:02:46,780
‫Okay, und dann loggen wir es in die Konsole

50
00:02:46,780 --> 00:02:49,510
‫ein, um zu sehen, ob es funktioniert.

51
00:02:49,510 --> 00:02:53,230
‫Warten Sie eine Sekunde, und jetzt müssen wir dies hier erneut ausführen.

52
00:02:53,230 --> 00:02:56,370
‫Im Terminal kann ich also einfach den Aufwärtspfeil verwenden, um

53
00:02:56,370 --> 00:02:57,993
‫den vorherigen Befehl auszuführen.

54
00:02:59,230 --> 00:03:02,540
‫Hier ist es also nodeindex. js wieder.

55
00:03:02,540 --> 00:03:07,540
‫Drücken Sie Return, und mal sehen, und tatsächlich geht es los.

56
00:03:07,550 --> 00:03:11,090
‫Hier ist also der Inhalt dieser Datei.

57
00:03:11,090 --> 00:03:12,560
‫So perfekt.

58
00:03:12,560 --> 00:03:15,900
‫Wir wissen jetzt, wie man Dinge aus Dateien liest.

59
00:03:15,900 --> 00:03:17,700
‫Herzliche Glückwünsche.

60
00:03:17,700 --> 00:03:22,700
‫Okay, aber wir wollen auch wissen, wie man in Dateien schreibt.

61
00:03:23,010 --> 00:03:26,520
‫Lassen Sie uns hier also eine neue Variable mit etwas mehr Text

62
00:03:26,520 --> 00:03:29,423
‫erstellen und sie dann in eine neue Datei schreiben.

63
00:03:30,490 --> 00:03:35,233
‫Nennen wir das also textOut, also für die Ausgabe.

64
00:03:36,180 --> 00:03:38,630
‫Und im Grunde schreiben wir einfach

65
00:03:38,630 --> 00:03:41,653
‫einen String, in den wir dann diesen Text einfügen.

66
00:03:42,520 --> 00:03:44,680
‫Ich werde hier eine Vorlagenzeichenfolge verwenden, und

67
00:03:44,680 --> 00:03:46,160
‫an dieser Stelle gehe

68
00:03:46,160 --> 00:03:50,270
‫ich davon aus, dass Sie mit der Syntax von es6 vertraut sind, okay.

69
00:03:50,270 --> 00:03:52,560
‫Wir haben hier also bereits

70
00:03:52,560 --> 00:03:57,530
‫const verwendet, was eine es6-Methode ist, um Variablen anstelle von var zu deklarieren,

71
00:03:57,530 --> 00:04:01,410
‫und jetzt den Template-String, was eine weitere es6-Sache ist.

72
00:04:01,410 --> 00:04:04,050
‫Wenn Sie also vor dem es6

73
00:04:04,050 --> 00:04:07,870
‫etwas zum Text hinzufügen wollten, mussten Sie den Plus-Operator verwenden.

74
00:04:07,870 --> 00:04:12,870
‫Sagen wir also "das ist" und dann Leerzeichen und dann Text ein.

75
00:04:18,170 --> 00:04:21,330
‫Okay, Sie müssten also den Plus-Operator verwenden, aber wenn es sich um

76
00:04:21,330 --> 00:04:23,440
‫eine Vorlagenzeichenfolge handelt, ist es viel einfacher.

77
00:04:23,440 --> 00:04:27,770
‫Alles, was wir tun müssen, ist die Backticks zu verwenden, dann etwas Text, und

78
00:04:27,770 --> 00:04:29,380
‫dann können Sie in

79
00:04:29,380 --> 00:04:31,453
‫diese Zeichenfolge ganz einfach die Variable einfügen.

80
00:04:32,765 --> 00:04:37,383
‫Sagen wir also: "Das wissen wir über die Avocado. " Dann verwenden wir

81
00:04:40,370 --> 00:04:45,370
‫diese Syntax, um die Variable einzugeben, okay, und so können wir

82
00:04:46,840 --> 00:04:50,220
‫im Grunde innerhalb dieser geschweiften Klammern hier jedes

83
00:04:50,220 --> 00:04:52,960
‫beliebige JavaScript schreiben, das wir wollen.

84
00:04:52,960 --> 00:04:56,950
‫Es dient also nicht nur zum sofortigen Einfügen von Variablen,

85
00:04:56,950 --> 00:04:58,630
‫wir können auch

86
00:04:58,630 --> 00:05:02,830
‫viele Berechnungen oder jeden JavaScript-Ausdruck durchführen, den wir hier verwenden wollten.

87
00:05:02,830 --> 00:05:05,823
‫Sagen wir nun ein Zeilenumbruchzeichen.

88
00:05:06,980 --> 00:05:09,383
‫Das ist also eine neue Zeile, okay.

89
00:05:11,360 --> 00:05:14,870
‫Und nur um Ihnen zu zeigen, dass wir hier

90
00:05:14,870 --> 00:05:18,240
‫JavaScript in diesen geschweiften Klammern verwenden können.

91
00:05:18,240 --> 00:05:21,463
‫Also dieses Dollarzeichen und dann geschweifte Klammern.

92
00:05:22,900 --> 00:05:27,900
‫Also Datum, oder eigentlich Datum wie dieses, Punkt jetzt.

93
00:05:28,450 --> 00:05:31,420
‫Okay, das ist also unser String, der

94
00:05:31,420 --> 00:05:35,480
‫diesen Text hier zusammen mit dem Text enthält, den wir

95
00:05:35,480 --> 00:05:38,290
‫zuvor aus der Variablen gelesen haben.

96
00:05:38,290 --> 00:05:42,070
‫Und das schreiben wir jetzt in eine neue Datei.

97
00:05:42,070 --> 00:05:44,800
‫Also verwenden wir wieder das

98
00:05:44,800 --> 00:05:47,033
‫FS-Modul und diesmal writeFileSync.

99
00:05:51,200 --> 00:05:54,683
‫Okay, und wieder geben wir den Pfad zur Datei

100
00:05:55,680 --> 00:05:58,223
‫an, und wir wollen sie immer noch

101
00:05:59,830 --> 00:06:04,830
‫im txt-Ordner und nennen sie Ausgabe. txt, okay.

102
00:06:06,560 --> 00:06:08,710
‫Und jetzt müssen wir

103
00:06:08,710 --> 00:06:12,520
‫tatsächlich angeben, was wir in diese Datei schreiben

104
00:06:12,520 --> 00:06:15,523
‫möchten, und uns die Textausgabevariable mitteilen.

105
00:06:16,720 --> 00:06:19,280
‫Und dies gibt nichts Sinnvolles

106
00:06:19,280 --> 00:06:22,780
‫zurück, bis wir nichts in einer Variablen speichern.

107
00:06:22,780 --> 00:06:27,380
‫Alles, was wir tun, ist, endlich etwas mehr in die Konsole zu protokollieren,

108
00:06:27,380 --> 00:06:31,033
‫wie zum Beispiel nur mitzuteilen, ob die Datei geschrieben wurde.

109
00:06:34,830 --> 00:06:37,680
‫Okay, dann testen wir es noch einmal.

110
00:06:37,680 --> 00:06:40,163
‫Ich lösche die Konsole mit Befehl K.

111
00:06:41,700 --> 00:06:46,600
‫Drücken Sie die Pfeiltaste nach oben, geben Sie ein, und vielleicht haben Sie es gesehen.

112
00:06:46,600 --> 00:06:50,210
‫Wir haben hier jetzt diese neue Datei namens Output, und wenn

113
00:06:50,210 --> 00:06:52,757
‫ich sie öffne, sehen Sie "Das wissen wir

114
00:06:52,757 --> 00:06:54,660
‫über die Avocado", was

115
00:06:54,660 --> 00:06:58,620
‫wir in den Index geschrieben haben. js, und dann

116
00:06:58,620 --> 00:07:01,020
‫ist dies der Text,

117
00:07:01,020 --> 00:07:04,620
‫der vorher aus der Eingabedatei kam, richtig.

118
00:07:04,620 --> 00:07:06,810
‫Dann die neue Linie, die wir erstellt haben

119
00:07:06,810 --> 00:07:09,280
‫und die dann im Grunde an diesem Datum erstellt wurde.

120
00:07:09,280 --> 00:07:10,980
‫Das ist also das Datum. Jetzt

121
00:07:10,980 --> 00:07:14,753
‫ist es nur ein Zeitstempel in Millisekunden.

122
00:07:16,590 --> 00:07:18,400
‫Alles klar, und so lesen und

123
00:07:18,400 --> 00:07:22,423
‫schreiben Sie in und aus Dateien in Node. JS.

