Метод Описание:
Запись в файл (в соответствии с дескрипторами файла), функция аналогична fs.writefile (), но этот метод обеспечивает более базовую операцию. Рекомендуется использовать несколько fs.writefile () в реальных приложениях.
Этот метод поставляется в двух формах:
1. fs.write (fd, буфер, смещение, длина [, позиция], [обратный вызов (err, byteswritten, buffer)])))
Этот способ написания записывает буфер в файл (найти файл в соответствии с FD Descriptor File).
2. fs.write (fd, data [, position [, кодирование]], [обратный вызов (err, worpion, string)])
Этот способ написания записывает данные в файл (найти файл в соответствии с дескриптором файла FD). Если данные не являются значением экземпляра буфера, они будут подтянуты к строке.
Грамматика:
Кода -копия выглядит следующим образом:
fs.write (fd, буфер, смещение, длина [, позиция], [обратный вызов (err, byteswritten, buffer)]))))
fs.write (fd, data [, position [, кодирование]], [callback (err, string, string)])))))
Поскольку этот метод принадлежит модулю FS, необходимо ввести модуль FS перед использованием (var fs = require («fs»))))
Получить параметры:
FD -файл дескриптор.
Буфер, данные будут записаны. Настройка размера буфера предпочтительно равен 8, что более эффективно.
Offset Записать в буфер смещения
Длина (целое число) указывает длину байтов считывания файла
Position (Integer) указывает начальную позицию для чтения файлов. Если этот элемент является нулевым, данные будут считываться из положения текущего указателя файла.
Обратный вызов проходит три параметра: err, bytesread и buffer
・ ERR Exception
・ BytesRead: количество прочитанных байтов
・ Буфер: буферный объект
Вторая форма:
кодирование кодирования персонажа
перезвонить
・ ERR Exception
・ Написано указывает, сколько символов будет записано в файл.
・ Строка возвращаемого буфера
пример:
Кода -копия выглядит следующим образом:
//fs.write(fd, буфер, смещение, длина [, позиция], [обратный вызов (err, byteswritten, buffer)]))))
// Результат выполнения: byteswritten = 8, buffer = <буфер 00 00 00 01 00 00 00 00>
var fs = require ('fs');
fs.open ('content.txt', 'a', function (err, fd) {
if (err) {
бросить ошибку;
}
VAR DATA = '123123123 Hello World';
var buf = новый буфер (8);
fs.write (fd, buf, 0, 8, 0, function (err, byteswritten, buffer) {
if (err) {
бросить ошибку;
}
console.log (byteswritten);
console.log (буфер);
fs.close (fd, function (err) {
if (err) {
бросить ошибку;
}
console.log ('file закрыт');
})
})
})
//fs.write(fd, data [, position [, кодирование]], [обратный вызов (err, writerbe, string)])
// Результат выполнения: Записано = 21, строка = <буфер 31 32 33 31 32 33 31 32 33 20 68 65 6C 6C 6F 20 77 BF 72 6C 64>
var fs = require ('fs');
fs.open ('content.txt', 'a', function (err, fd) {
if (err) {
бросить ошибку;
}
VAR DATA = '123123123 Hello World';
fs.write (fd, data, 0, 'utf-8', function (err, string, string) {
if (err) {
бросить ошибку;
}
console.log (writeten);
console.log (String);
fs.close (fd, function (err) {
if (err) {
бросить ошибку;
}
console.log ('file закрыт');
})
})
})
Исходный код:
Кода -копия выглядит следующим образом:
// Использование:
// fs.write (fd, буфер, смещение, длина [, позиция], обратный вызов);
// ИЛИ
// fs.write (fd, string [, position [, кодирование]], обратный вызов);
fs.write = function (fd, буфер, смещение, длина, положение, обратный вызов) {
if (util.isbuffer (buffer)) {
// Если позиция не пройден
if (util.isfunction (position)) {
обратный вызов = позиция;
позиция = null;
}
Callback = maybecallback (обратный вызов);
var warper = function (err, worpend) {
// сохранить ссылку на буфер, чтобы его не могли быть задействованы слишком рано.
обратный вызов (err, написано || 0, buffer);
};
return Binding.WriteBuffer (FD, буфер, смещение, длина, положение, обертка);
}
if (util.isstring (buffer))
буфер += '';
if (! util.isfunction (позиция)) {
if (util.isfunction (offset)) {
позиция = смещение;
offset = null;
} еще {
положение = длина;
}
длина = 'utf8';
}
обратный вызов = MayBecallback (позиция);
position = function (err, worpion) {
// сохранить ссылку на строку на случай, если она внешняя
обратный вызов (err, написано || 0, buffer);
};
return inding.writestring (fd, буфер, смещение, длина, положение);
};