v1.0.6: 导入网址文件增加追加/覆盖处理方式选择(默认追加)

This commit is contained in:
2026-08-11 15:33:19 +08:00
parent 44852f7be7
commit add2cea545
3 changed files with 20 additions and 6 deletions
+11 -4
View File
@@ -174,10 +174,12 @@ async function readFileSmart(file) {
return text;
}
function importUrlsText(text) {
function importUrlsText(text, mode) {
const ta = $("taskForm").elements["urls"];
const clean = (s) => s.split(" #")[0].trim(); // 去掉行内注释 (URL 不含空格, 安全)
const existing = new Set(ta.value.split(/\r?\n/).map(clean).filter(Boolean));
const existing = new Set(
mode === "overwrite" ? [] : ta.value.split(/\r?\n/).map(clean).filter(Boolean)
);
const fresh = text.split(/\r?\n/).map(clean).filter(Boolean);
let added = 0;
for (const line of fresh) {
@@ -198,9 +200,14 @@ $("urlFileInput").onchange = async (e) => {
}
try {
const text = await readFileSmart(file);
const r = importUrlsText(text);
const mode = $("importMode").value;
const r = importUrlsText(text, mode);
formDirty = true;
toast(`已导入 ${file.name}:共 ${r.total} 行,新增 ${r.added} 条网址`);
if (mode === "overwrite") {
toast(`已导入 ${file.name}:共 ${r.total} 行(覆盖原列表,新增 ${r.added} 条)`);
} else {
toast(`已导入 ${file.name}:共 ${r.total} 行,新增 ${r.added} 条网址(追加)`);
}
} catch (err) {
toast("文件读取失败: " + err.message, true);
}