وصف الطريقة:
اكتب البيانات إلى الملف بشكل غير متزامن. إذا كان الملف موجودًا بالفعل ، فسيتم استبدال المحتوى الأصلي.
القواعد:
نسخة الكود كما يلي:
fs.writefile (اسم الملف ، البيانات ، [الخيارات] ، [رد الاتصال (ERR)])
نظرًا لأن هذه الطريقة تنتمي إلى وحدة FS ، فمن الضروري تقديم وحدة FS قبل الاستخدام (var fs = require ("fs"))
تلقي المعلمات:
اسم الملف (سلسلة) اسم الملف
البيانات (سلسلة | المخزن المؤقت) المحتوى المراد كتابته ، والذي يمكن أن يصنع سلاسل أو بيانات عازلة.
خيارات (كائن) كائن صفيف الخيار ، يحتوي على:
・ ترميز (سلسلة) القيمة الاختيارية ، الافتراضي "UTF8" ، عندما يتم تجاهل هذه القيمة ، يجب تجاهل هذه القيمة.
・ الوضع (الرقم) ملف قراءة وكتابة الأذونات ، القيمة الافتراضية 438
・ Flag (سلسلة) القيمة الافتراضية 'w'
رد الاتصال {function} رد الاتصال ، اجتياز معلمة استثناء err.
مثال:
نسخة الكود كما يلي:
fs.writefile ('message.txt' ، 'hello node' ، function (err) {
إذا (خطأ) رمي خطأ ؛
console.log ('it/' s حفظ! ') ؛
}) ؛
رمز المصدر:
نسخة الكود كما يلي:
fs.writefile = دالة (المسار ، البيانات ، الخيارات ، رد الاتصال) {
var callback = maybecallback (الوسيطات [encuments.length - 1]) ؛
if (util.isfunction (خيارات) ||! خيارات) {
Options = {الترميز: 'Utf8' ، الوضع: 438 /*= 0666* /، flag: 'w'} ؛
} آخر إذا (util.isstring (خيارات)) {
Options = {الترميز: الخيارات ، الوضع: 438 ، العلامة: 'w'} ؛
} آخر إذا (! util.isobject (خيارات)) {
رمي نوع جديد ("الحجج السيئة") ؛
}
assertencoding (Options.encoding) ؛
var flag = Options.flag || 'w' ؛
fs.open (path ، Options.flag || 'W' ، Options.Mode ، Function (OpenErr ، FD) {
إذا (openerr) {
إذا (رد الاتصال) رد الاتصال (OpenErr) ؛
} آخر {
var buffer = util.isbuffer (data)؟ البيانات: عازلة جديدة ('' + البيانات ،
Options.encoding || 'UTF8') ؛
var position = /a/.test(flag)؟ NULL: 0 ؛
Writeall (fd ، buffer ، 0 ، buffer.length ، position ، callback) ؛
}
}) ؛
} ؛