Как записать в определенную строку в текстовом файле с помощью javascript? [Дубликат]

Чтобы использовать наши собственные объекты класса как ключи в таких коллекциях, как HashMap, Hashtable и т. д., мы должны переопределить оба метода (hashCode () и equals ()), узнав о внутренней работе коллекции. В противном случае это приводит к неправильным результатам, которых мы не ожидаем.

11
задан erikvold 10 June 2015 в 18:41
поделиться

2 ответа

Пока текстовый файл не такой большой, вы должны просто прочитать текстовый файл в массиве, вставить элемент в определенный индекс строки и затем вернуть массив обратно в файл. Я добавил несколько примеров кода - убедитесь, что вы изменили 'file.txt', "Your String" и конкретный lineNumber.

Отказ от ответственности, я еще не успел проверить приведенный ниже код:

var fs = require('fs');

var data = fs.readFileSync('file.txt').toString().split("\n");
data.splice(lineNumber, 0, "Your String");
var text = data.join("\n");

fs.writeFile('file.txt', text, function (err) {
  if (err) return console.log(err);
});
13
ответ дан Vineet Kosaraju 25 August 2018 в 07:37
поделиться

Если вы находитесь в системе Unix, вы, вероятно, захотите использовать sed , например, чтобы добавить текст в середину файла:

#!/bin/sh
text="Text to add"
file=data.txt

lines=`wc -l $file | awk '{print $1}'`

middle=`expr $lines / 2`

# If the file has an odd number of lines this script adds the text
# after the middle line. Comment this block out to add before
if [ `expr $lines % 2` -eq 1 ]
then
  middle=`expr $middle + 1`
fi

sed -e "${middle}a $text" $file

Примечание: выше пример из здесь .

С NodeJS кажется, что есть некоторые пакеты npm , которые могут помочь, например sed.js или заменить .

1
ответ дан erikvold 25 August 2018 в 07:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: