All language subtitles for 005 Reading and Writing Files.en

af Afrikaans
ak Akan
sq Albanian
am Amharic
ar Arabic Download
hy Armenian
az Azerbaijani
eu Basque
be Belarusian
bem Bemba
bn Bengali
bh Bihari
bs Bosnian
br Breton
bg Bulgarian
km Cambodian
ca Catalan
ceb Cebuano
chr Cherokee
ny Chichewa
zh-CN Chinese (Simplified)
zh-TW Chinese (Traditional)
co Corsican
hr Croatian
cs Czech
da Danish
nl Dutch
en English
eo Esperanto
et Estonian
ee Ewe
fo Faroese
tl Filipino
fi Finnish
fr French
fy Frisian
gaa Ga
gl Galician
ka Georgian
de German
el Greek
gn Guarani
gu Gujarati
ht Haitian Creole
ha Hausa
haw Hawaiian
iw Hebrew
hi Hindi
hmn Hmong
hu Hungarian
is Icelandic
ig Igbo
id Indonesian
ia Interlingua
ga Irish
it Italian
ja Japanese
jw Javanese
kn Kannada
kk Kazakh
rw Kinyarwanda
rn Kirundi
kg Kongo
ko Korean
kri Krio (Sierra Leone)
ku Kurdish
ckb Kurdish (Soranî)
ky Kyrgyz
lo Laothian
la Latin
lv Latvian
ln Lingala
lt Lithuanian
loz Lozi
lg Luganda
ach Luo
lb Luxembourgish
mk Macedonian
mg Malagasy
ms Malay
ml Malayalam
mt Maltese
mi Maori
mr Marathi
mfe Mauritian Creole
mo Moldavian
mn Mongolian
my Myanmar (Burmese)
sr-ME Montenegrin
ne Nepali
pcm Nigerian Pidgin
nso Northern Sotho
no Norwegian
nn Norwegian (Nynorsk)
oc Occitan
or Oriya
om Oromo
ps Pashto
fa Persian
pl Polish
pt-BR Portuguese (Brazil)
pt Portuguese (Portugal)
pa Punjabi
qu Quechua
ro Romanian
rm Romansh
nyn Runyakitara
ru Russian
sm Samoan
gd Scots Gaelic
sr Serbian
sh Serbo-Croatian
st Sesotho
tn Setswana
crs Seychellois Creole
sn Shona
sd Sindhi
si Sinhalese
sk Slovak
sl Slovenian
so Somali
es Spanish
es-419 Spanish (Latin American)
su Sundanese
sw Swahili
sv Swedish
tg Tajik
ta Tamil
tt Tatar
te Telugu
th Thai
ti Tigrinya
to Tonga
lua Tshiluba
tum Tumbuka
tr Turkish
tk Turkmen
tw Twi
ug Uighur
uk Ukrainian
ur Urdu
uz Uzbek
vi Vietnamese
cy Welsh
wo Wolof
xh Xhosa
yi Yiddish
yo Yoruba
zu Zulu
Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated: 1 00:00:01,410 --> 00:00:03,890 This is a really exciting lecture 2 00:00:03,890 --> 00:00:07,230 cause you're gonna learn how to read data from files, 3 00:00:07,230 --> 00:00:10,393 and also how to write data into files. 4 00:00:12,110 --> 00:00:15,050 And we already imported the built-in module 5 00:00:15,050 --> 00:00:17,450 that we need for that in the last lecture, 6 00:00:17,450 --> 00:00:20,910 and so let's now get rid of this code 7 00:00:20,910 --> 00:00:23,990 and start using the FS module. 8 00:00:23,990 --> 00:00:26,707 So we use fs.readfilesync, okay. 9 00:00:30,720 --> 00:00:34,250 And sync stands for synchronous, 10 00:00:34,250 --> 00:00:36,210 and you will start learning about synchronous 11 00:00:36,210 --> 00:00:40,240 and asynchronous right in the next video, okay. 12 00:00:40,240 --> 00:00:43,760 So this is the synchronous version of file reading. 13 00:00:43,760 --> 00:00:47,040 There is also an asynchronous version. 14 00:00:47,040 --> 00:00:50,880 So, the read file sync function takes two arguments. 15 00:00:50,880 --> 00:00:54,640 The first one is the path to the file that we're reading 16 00:00:54,640 --> 00:00:57,300 and then also the character encoded. 17 00:00:57,300 --> 00:00:59,700 So, first the path to the file, 18 00:00:59,700 --> 00:01:02,163 and the file is in the txt folder, 19 00:01:04,130 --> 00:01:06,973 and it is the input one. 20 00:01:08,170 --> 00:01:12,260 So, this text that I have here about the avocado 21 00:01:12,260 --> 00:01:15,740 is what we're gonna read into a variable. 22 00:01:15,740 --> 00:01:18,060 And I'm not sure if you're gonna be able 23 00:01:18,060 --> 00:01:21,950 to see this emoji here right on your operating system, 24 00:01:21,950 --> 00:01:24,710 but if you're on Windows 8 or Windows 10 25 00:01:24,710 --> 00:01:26,960 then that's probably going to work just fine. 26 00:01:28,000 --> 00:01:31,420 Okay, so we specified a path there, 27 00:01:31,420 --> 00:01:33,730 and there are multiple ways of doing that, 28 00:01:33,730 --> 00:01:36,573 but for now I'm gonna go with the simplest one. 29 00:01:37,490 --> 00:01:42,490 So, all I'm gonna do is set it in the /txt/input.txt. 30 00:01:47,460 --> 00:01:50,470 So again, we're starting at the home folder, 31 00:01:50,470 --> 00:01:52,100 which is basically the folder 32 00:01:52,100 --> 00:01:55,350 where the index.js file is located, 33 00:01:55,350 --> 00:01:57,430 so that's the dot in there, 34 00:01:57,430 --> 00:02:00,060 and then we move into the txt folder, 35 00:02:00,060 --> 00:02:02,633 and from there input.txt. 36 00:02:03,670 --> 00:02:05,080 Then here the second one we have 37 00:02:05,080 --> 00:02:07,550 to define the character encoding, 38 00:02:07,550 --> 00:02:10,320 which is utf8, usually, 39 00:02:10,320 --> 00:02:12,710 at least if you're just using English. 40 00:02:12,710 --> 00:02:15,200 Okay, and if you don't specify this, 41 00:02:15,200 --> 00:02:18,770 we get back something called a buffer, okay, 42 00:02:18,770 --> 00:02:20,210 and that's not really what we want. 43 00:02:20,210 --> 00:02:22,900 We really just want the text. 44 00:02:22,900 --> 00:02:26,770 And so, calling this function here will now read the data 45 00:02:26,770 --> 00:02:29,980 from the file and return it to us, 46 00:02:29,980 --> 00:02:31,600 and so we need save that somewhere 47 00:02:31,600 --> 00:02:34,083 and we put it into a variable. 48 00:02:35,200 --> 00:02:40,200 So let's say textIn because it's a more text input. 49 00:02:43,430 --> 00:02:46,780 Okay, and then let's log it to the console 50 00:02:46,780 --> 00:02:49,510 just to see if it works. 51 00:02:49,510 --> 00:02:53,230 Give it a second, and now we need to run this here again. 52 00:02:53,230 --> 00:02:56,370 So in the terminal, I can just use the up arrow 53 00:02:56,370 --> 00:02:57,993 to run the previous command. 54 00:02:59,230 --> 00:03:02,540 So here it is nodeindex.js again. 55 00:03:02,540 --> 00:03:07,540 Hit return, and let's see, and indeed here we go. 56 00:03:07,550 --> 00:03:11,090 So here is the content of that file. 57 00:03:11,090 --> 00:03:12,560 So, perfect. 58 00:03:12,560 --> 00:03:15,900 We now know how to read stuff from files. 59 00:03:15,900 --> 00:03:17,700 Congratulations. 60 00:03:17,700 --> 00:03:22,700 Okay, but we also want to know how to write to files. 61 00:03:23,010 --> 00:03:26,520 So let's create some new variable here with some more text, 62 00:03:26,520 --> 00:03:29,423 and then write it into a new file. 63 00:03:30,490 --> 00:03:35,233 So let's call that one textOut, so for output. 64 00:03:36,180 --> 00:03:38,630 And basically let's just write a string 65 00:03:38,630 --> 00:03:41,653 where we will then include this text in. 66 00:03:42,520 --> 00:03:44,680 I'm gonna be using a template string here, 67 00:03:44,680 --> 00:03:46,160 and at this point I'm gonna assume 68 00:03:46,160 --> 00:03:50,270 that you're kinda familiar with the es6 syntax, okay. 69 00:03:50,270 --> 00:03:52,560 So we already used const here, 70 00:03:52,560 --> 00:03:57,530 which is an es6 way of declaring variables instead of var, 71 00:03:57,530 --> 00:04:01,410 and now the template string, which is another es6 thing. 72 00:04:01,410 --> 00:04:04,050 So before the es6, if you wanted to add something 73 00:04:04,050 --> 00:04:07,870 to text in, you would have to use the plus operator. 74 00:04:07,870 --> 00:04:12,870 So let's say, "this is" and then space and then text in. 75 00:04:18,170 --> 00:04:21,330 Okay, so you would have to use the plus operator, 76 00:04:21,330 --> 00:04:23,440 but if it's a template string it's much easier. 77 00:04:23,440 --> 00:04:27,770 All we have to do is use the backticks, then some text, 78 00:04:27,770 --> 00:04:29,380 and then into this string you can 79 00:04:29,380 --> 00:04:31,453 very easily plug in the variable. 80 00:04:32,765 --> 00:04:37,383 So let's say, "This is what we know about the avocado." 81 00:04:40,370 --> 00:04:45,370 Then we use this syntax to input the variable, okay, 82 00:04:46,840 --> 00:04:50,220 and so basically inside of these curly braces here 83 00:04:50,220 --> 00:04:52,960 we can write any JavaScript that we want. 84 00:04:52,960 --> 00:04:56,950 So it's not just for plugging in variables straight away, 85 00:04:56,950 --> 00:04:58,630 we can also do a lot of calculations 86 00:04:58,630 --> 00:05:02,830 or any javaScript expression that we wanted in here. 87 00:05:02,830 --> 00:05:05,823 Now, let's say a new line character. 88 00:05:06,980 --> 00:05:09,383 So that's a new line, okay. 89 00:05:11,360 --> 00:05:14,870 And just to show you that we can actually use JavaScript 90 00:05:14,870 --> 00:05:18,240 inside of these curly braces here. 91 00:05:18,240 --> 00:05:21,463 So this dollar sign and then curly braces. 92 00:05:22,900 --> 00:05:27,900 So date, or actually date like this, dot now. 93 00:05:28,450 --> 00:05:31,420 Okay, so that is our string, 94 00:05:31,420 --> 00:05:35,480 which has this text here in together with the text 95 00:05:35,480 --> 00:05:38,290 that we read before from the variable. 96 00:05:38,290 --> 00:05:42,070 And so now let's write that to a new file. 97 00:05:42,070 --> 00:05:44,800 So again, we use the FS module, 98 00:05:44,800 --> 00:05:47,033 and this time, writeFileSync. 99 00:05:51,200 --> 00:05:54,683 Okay, and again we specify the path to the file, 100 00:05:55,680 --> 00:05:58,223 and we still want it in the txt folder, 101 00:05:59,830 --> 00:06:04,830 and we call it output.txt, okay. 102 00:06:06,560 --> 00:06:08,710 And now we have to actually specify 103 00:06:08,710 --> 00:06:12,520 what we want to write into that file, right, 104 00:06:12,520 --> 00:06:15,523 and tell us the text out variable. 105 00:06:16,720 --> 00:06:19,280 And this doesn't return anything meaningful 106 00:06:19,280 --> 00:06:22,780 until we don't save anything to any variable. 107 00:06:22,780 --> 00:06:27,380 All we do is to finally log something more to the console, 108 00:06:27,380 --> 00:06:31,033 like just informing if the file has been written. 109 00:06:34,830 --> 00:06:37,680 Okay, so let's test it out again. 110 00:06:37,680 --> 00:06:40,163 I'm gonna clear the console with command K. 111 00:06:41,700 --> 00:06:46,600 Hit the arrow up key, enter, and maybe you saw it. 112 00:06:46,600 --> 00:06:50,210 We here now have this new file called Output, 113 00:06:50,210 --> 00:06:52,757 and if I open it up, then you see, 114 00:06:52,757 --> 00:06:54,660 "This is what we know about the avocado," 115 00:06:54,660 --> 00:06:58,620 which is what we wrote in the index.js, 116 00:06:58,620 --> 00:07:01,020 and then this is the text that came 117 00:07:01,020 --> 00:07:04,620 before from the input file, right. 118 00:07:04,620 --> 00:07:06,810 Then the new line that we created, 119 00:07:06,810 --> 00:07:09,280 and then created on this date basically. 120 00:07:09,280 --> 00:07:10,980 So this is date.now, 121 00:07:10,980 --> 00:07:14,753 so it's just a timestamp in milliseconds. 122 00:07:16,590 --> 00:07:18,400 All right, and this is how you read 123 00:07:18,400 --> 00:07:22,423 and write to and from files in Node.JS. 9794

Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.