๐ŸŸฉ Frontend-HTML & CSS & +JS/๐Ÿ”ฐ Node Js

[readFile/writeFile] ๋น„๋™๊ธฐ,๋™๊ธฐ์‹์œผ๋กœ ํŒŒ์ผ ๋งŒ๋“ค๊ธฐ(textํŒŒ์ผ ๋‚ด์šฉ์ฝ๊ณ , text ํŒŒ์ผ ๋‚ด์šฉ ์“ฐ๊ณ  ๋งŒ๋“ค๊ธฐ)

ramen2 2024. 11. 24. 16:41
๋ฐ˜์‘ํ˜•


 [FileSystem ๋ชจ๋“ˆ]
ํŒŒ์ผ์ฒ˜๋ฆฌ์™€ ๊ด€๋ จ๋œ ๋ชจ๋“ˆ, node.js์—์„œ ๊ฐ€์žฅ ์ค‘์š”ํ•˜๊ณ  ๊ธฐ์ดˆ๊ฐ€ ๋˜๋Š” ๋ชจ๋“ˆ์ž…๋‹ˆ๋‹ค.

 

[์‚ฌ์šฉ ๋ฉ”์†Œ๋“œ ์ •๋ฆฌ] < node.js์—์„œ ๋™๊ธฐ์ ์œผ๋กœ ์ฝ๋Š”๊ฑธ ์ž˜ ์„ ํ˜ธํ•˜์—ฌ ์“ฐ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—, ๋™๊ธฐ์‹œ์—๋Š” Sync๋ผ๋Š”๊ฑธ ๋ถ™ํž˜

- readFile() : ํŒŒ์ผ์„ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์ฝ์Šต๋‹ˆ๋‹ค.
- readFileSync() : ํŒŒ์ผ์„ ๋™๊ธฐ์ ์œผ๋กœ ์ฝ์Šต๋‹ˆ๋‹ค.
- writeFile() : ํŒŒ์ผ์„ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์”๋‹ˆ๋‹ค.
- writeFileSync() : ํŒŒ์ผ์„ ๋™๊ธฐ์ ์œผ๋กœ ์”๋‹ˆ๋‹ค.

 

[๋™๊ธฐ / ๋น„๋™๊ธฐ์‹]

๋™๊ธฐ์‹ : ํ”„๋กœ๊ทธ๋žจ์ด ๋™์ž‘ํ•˜๋Š” ์ƒํƒœ์—์„œ ์™„์ „ํžˆ ํ•ด๋‹น ๋‚ด์šฉ์„ ๋๋‚ด๊ณ  ๋‹ค์Œ์œผ๋กœ ์ œ์–ด๋ฅผ ๋„˜๊ธฐ๋Š” ๋ฐฉ์‹
๋น„๋™๊ธฐ์‹ : ๋™์ž‘์ด ๋๋‚˜์ง€ ์•Š์€ ์ƒํƒœ์—์„œ๋„ ์ œ์–ด๊ถŒ์„ ๋„˜๊ธด ํ›„ ํ”„๋กœ๊ทธ๋žจ์„ ๊ณ„์† ์ง„ํ–‰ (์‹ค๋ฌด,node js์—์„œ ์ฃผ๋กœ ์‚ฌ์šฉ)

https://www.youtube.com/watch?v=7woGFlMhSgk&ab_channel=%EC%83%9D%ED%99%9C%EC%BD%94%EB%94%A9

 

[๋ฐฉ๋ฒ• (node ์„ค์น˜ ํ›„)]

1. ํ„ฐ๋ฏธ๋„ ์ฐฝ์„ ์—ด๊ณ  (ctrl + j) ๊ฒฝ๋กœ๋ฅผ ์„ค์ •ํ•จ

-   cd ํŒŒ์ผ๋ช… ํ•˜๊ฑฐ๋‚˜  cd.. ๋ฅผ ํ†ตํ•ด ์ƒ์œ„ํด๋”๋กœ ์ด๋™ ํ›„ cdํŒŒ์ผ๋ช…ํ•จ

 

2. npm init -y๋กœ ๊ธฐ๋ณธ๊ฐ’ ๊ทธ๋Œ€๋กœ ๋ฐ”๋กœ json์„ค์ •

 

3. (ํŒŒ์ผ ์ฝ๊ธฐ) readTest.js ๋ฅผ ๋งŒ๋“ค๊ณ  ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ๋„ฃ๊ณ  ๊ฐ™์€ ํด๋”์— text1.txt์— '๋‚˜๋Š” text1'์ด๋ผ๊ณ  ์ ์Œ (์•„๋ž˜์ฝ”๋“œ)

-> cmd์— node readTest.js๋กœ ์‹คํ–‰ํ•˜๋ฉด ๋‚˜๋Š” text๊ฐ€ cmd ํ„ฐ๋ฏธ๋„์— ๋‚˜ํƒ€๋‚จ

const fs = require("fs"); //ํŒŒ์ผ์‹œ์Šคํ…œ์— ํŒจํ‚ค์ง€ ์—ฐ๊ฒฐ

//๋น„๋™๊ธฐ์ฒ˜๋ฆฌ ์˜ˆ์™ธ์ฒ˜๋ฆฌ๋ฅผ ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
fs.readFile("text1.txt", "utf-8", (err, data) => {
  //err,data ์˜ˆ์™ธ์ฒ˜๋ฆฌ
  if (err) {
    console.log("์—๋Ÿฌ๊ฐ€๋ฐœ์ƒ/๋น„๋™๊ธฐ");
  } else {
    console.log(data);
  }
});

 

4. (ํŒŒ์ผ ์“ฐ๊ธฐ) writeTest.js ๋ฅผ ๋งŒ๋“ค๊ณ  ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ๋„ฃ๊ณ  const data์— ํŒŒ์ผ์— ๋„ฃ์„ ๋‚ด์šฉ์„ ์ ๊ณ ,

๋งŒ๋“คํŒŒ์ผ์„ writeFile์•ˆ์— ๋„ฃ์œผ๋ฉด ํ•ด๋‹นํŒŒ์ผ์ด ๋งŒ๋“ค์–ด์ง€๋ฉด ์œ„ ๋‚ด์šฉ์ด ๋“ค์–ด๊ฐ€์žˆ์Œ

-> cmd์— node writeTest.js๋กœ ์‹คํ–‰ํ•˜๋ฉด ํ•ด๋‹น ๋‚ด์šฉ์ด ๋“ค์–ด๊ฐ„ ํŒŒ์ผ์ด ์“ฐ๊ธฐ ๋จ

const fs = require("fs"); //ํŒŒ์ผ์‹œ์Šคํ…œ์— ํŒจํ‚ค์ง€ ์—ฐ๊ฒฐ
const data = "Hello Node.js !! ๋„ˆ๊ฐ€ ๋งŒ๋“  ํŒŒ์ผ์— ๋“ค์–ด๊ฐˆ ๋‚ด์šฉ์ด์•ผ";

fs.writeFile("text5.txt", data, "utf-8", (err) => {
  if (err) {
    console.log("์—๋Ÿฌ ๋ฐœ์ƒ!");
  } else {
    console.log("์ €์žฅ์™„๋ฃŒ / ๋น„๋™๊ธฐ");
  }

 

์จ์ง„ํŒŒ์ผ ์—ด๊ธฐ

๋ฐ˜์‘ํ˜•