From 3647c477a9435d64643ba446be15b00d488b7ddf Mon Sep 17 00:00:00 2001 From: ArkadiuszDz Date: Sun, 4 Feb 2018 22:02:40 +0100 Subject: [PATCH] dzien 2 --- README.md | 10 ++++---- app/data/zadanie01/sum.txt | 1 + app/data/zadanieDnia/c_test.txt | 7 ++++++ app/data/zadanieDnia/copy_test.txt | 7 ++++++ app/zadanie01.js | 20 ++++++++++++++- app/zadanie02.js | 20 ++++++++++++++- app/zadanieDnia.js | 39 +++++++++++++++++++++++++++++- 7 files changed, 96 insertions(+), 8 deletions(-) create mode 100644 app/data/zadanieDnia/c_test.txt create mode 100644 app/data/zadanieDnia/copy_test.txt diff --git a/README.md b/README.md index c20a779..745b602 100644 --- a/README.md +++ b/README.md @@ -170,7 +170,7 @@ const fs = require('fs'); //Zapisz plik... fs.writeFile('./data/file.txt', 'Hello, World!', err => {//Zapis: ...kiedy skończysz uruchom naszą funkcję callback if (err === null){ //Zapis: Sprawdzamy czy obiekt błędu jest null-em - jeżeli tak - wszystko poszło ok - + //Odczytaj plik... fs.readFile('./data/file.txt', 'utf8', (err, data) => {//Odczyt: ...kiedy skończysz uruchom naszą funkcję callback if (err === null){ //Odczyt: Sprawdzamy czy obiekt błędu jest null-em - jeżeli tak - wyświetlamy zawartość pliku @@ -179,7 +179,7 @@ fs.writeFile('./data/file.txt', 'Hello, World!', err => {//Zapis: ...kiedy skoń console.log('Błąd podczas odczytu pliku!', err); } }); - + } else { //Zapis: Jeżeli obiekt błędu nie był null-em, to pojawił się błąd - np. niepoprawna ścieżka console.log('Błąd podczas zapisu pliku!', err); } @@ -276,7 +276,7 @@ LISTOWANIE ZAWARTOŚCI KATALOGU KIEDY SKOŃCZY - CALLBACK: PĘTLA DLA KAŻDEJ NAZWY PLIKU ODCZYT PLIKU - KIERY SKOŃCZY - CALLBACK: + KIEDY SKOŃCZY - CALLBACK: WYŚWIETLENIE ZAWARTOŚCI PLIKU LUB INFORMACJI BŁĘDZIE ``` @@ -295,7 +295,7 @@ ODCZYT PLIKU KIEDY SKOŃCZY - CALLBACK: ZMIANA TEKSTU WEDŁUG WZORU ZAPIS TAKIEGO SAMEGO PLIKU - KIERY SKOŃCZY - CALLBACK: + KIEDY SKOŃCZY - CALLBACK: INFORMACJA O POWODZENIU LUB BŁĘDZIE ``` @@ -313,4 +313,4 @@ node zadanieDnia.js ./data/zadanieDnia/test.txt [forking]: https://guides.github.com/activities/forking/ [ref-clone]: http://gitref.org/creating/#clone [es6-tutorial]: http://qnimate.com/post-series/ecmascript-6-complete-tutorial/ -[download-node]: https://nodejs.org/en/download/ \ No newline at end of file +[download-node]: https://nodejs.org/en/download/ diff --git a/app/data/zadanie01/sum.txt b/app/data/zadanie01/sum.txt index e69de29..615088b 100644 --- a/app/data/zadanie01/sum.txt +++ b/app/data/zadanie01/sum.txt @@ -0,0 +1 @@ +108 \ No newline at end of file diff --git a/app/data/zadanieDnia/c_test.txt b/app/data/zadanieDnia/c_test.txt new file mode 100644 index 0000000..83474ce --- /dev/null +++ b/app/data/zadanieDnia/c_test.txt @@ -0,0 +1,7 @@ +YoU DoN'T KnOw jS: eS6 & bEyOnD +FoReWoRd + +KyLe sImPsOn iS A ThOrOuGh pRaGmAtIsT. + +I CaN'T ThInK Of hIgHeR PrAiSe tHaN ThIs. To mE, tHeSe aRe tWo oF ThE MoSt iMpOrTaNt qUaLiTiEs tHaT A SoFtWaRe dEvElOpEr mUsT HaVe. ThAt's rIgHt: MuSt, NoT ShOuLd. KyLe's kEeN AbIlItY To tEaSe aPaRt lAyErS Of tHe jAvAsCrIpT PrOgRaMmInG LaNgUaGe aNd pReSeNt tHeM In uNdErStAnDaBlE AnD MeAnInGfUl pOrTiOnS Is sEcOnD To nOnE. +[HtTpS://GiThUb.cOm/gEtIfY/YoU-DoNt-kNoW-Js/bLoB/MaStEr/eS6%20%26%20bEyOnD/FoReWoRd.mD] \ No newline at end of file diff --git a/app/data/zadanieDnia/copy_test.txt b/app/data/zadanieDnia/copy_test.txt new file mode 100644 index 0000000..47c17e3 --- /dev/null +++ b/app/data/zadanieDnia/copy_test.txt @@ -0,0 +1,7 @@ +You Don't Know JS: ES6 & Beyond +Foreword + +Kyle Simpson is a thorough pragmatist. + +I can't think of higher praise than this. To me, these are two of the most important qualities that a software developer must have. That's right: must, not should. Kyle's keen ability to tease apart layers of the JavaScript programming language and present them in understandable and meaningful portions is second to none. +[https://github.com/getify/You-Dont-Know-JS/blob/master/es6%20%26%20beyond/foreword.md] \ No newline at end of file diff --git a/app/zadanie01.js b/app/zadanie01.js index 8c20173..345c174 100644 --- a/app/zadanie01.js +++ b/app/zadanie01.js @@ -1 +1,19 @@ -//Twój kod \ No newline at end of file +//Twój kod + +const fs = require('fs'); + +fs.readFile('./data/zadanie01/input.json',(err,data) => { + if (err == null){ + let dane = JSON.parse(data); + let result = dane.reduce((prev,next) => prev+next); + fs.writeFile('./data/zadanie01/sum.txt',result,err => { + if(err == null){ + console.log('Zapis do pliku zakończony powdzeniem'); + } else { + console.log('Błąd zapisu pliku'); + } + }); + } else { + console.log('Błąd odczytu danych'); + } +}); diff --git a/app/zadanie02.js b/app/zadanie02.js index 8c20173..8af7cda 100644 --- a/app/zadanie02.js +++ b/app/zadanie02.js @@ -1 +1,19 @@ -//Twój kod \ No newline at end of file +//Twój kod +const fs = require('fs'); + +fs.readdir('./data/zadanie02',(err,files) => { + if (err === null){ + files.forEach((file) => { + //console.log(file); + fs.readFile('./data/zadanie02/'+file,'UTF-8',(err,data) => { + if (err === null){ + console.log(data); + } else { + console.log(`Błąd odczytu pliku`); + } + }); + }); + } else { + console.log('Błąd odczytu listy plików'); + } +}); diff --git a/app/zadanieDnia.js b/app/zadanieDnia.js index 8c20173..bf88a33 100644 --- a/app/zadanieDnia.js +++ b/app/zadanieDnia.js @@ -1 +1,38 @@ -//Twój kod \ No newline at end of file +//Twój kod +const fs = require('fs'); + +let [element,index,fileName] = [...process.argv]; + +fs.readFile('./data/zadanieDnia/'+fileName,'UTF-8',(err,data) => { + if (err === null){ + + let textData = [...data]; + + fs.writeFile('./data/zadanieDnia/copy_'+fileName,data,err => { + //tworzenie kopii zapasowej + + if (err === null){ + + let textChanged = textData.map((element,index) => { + + if (!(index % 2)) { + return element.toUpperCase(); + } else { + return element.toLowerCase(); + } + }); + + fs.writeFile('./data/zadanieDnia/c_'+fileName,textChanged.join(''),err => { + if (err ===null) { + console.log('Zapis zakończył się sukcesem'); + } + }); + + } else { + console.log('Błąd tworzenia kopii zapasowej'); + } + }); + } else { + console.log('Błąd odczytu pliku'); + } +});