亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Javascript從路徑中獲取文件名和類型作為字符串

Javascript從路徑中獲取文件名和類型作為字符串

Go
慕村225694 2023-08-21 15:14:18
我有一個文件拖放系統,它將文件的整個路徑作為字符串返回C:\Users\alexr\Desktop\filename.type。我可以刪除主目錄,這樣我就剩下Desktop\filename.type. 如何分隔文件路徑 ( Desktop) 以等于變量path以及文件名和類型 ( filename.type) 以等于變量type。我想要一個 javascript 或 jQuery 的答案(盡管我懷疑它是否需要)編輯預期結果:少說我有以下路徑Desktop\Folder\file.txt我想要一個path包含的變量Desktop\Folder和一個變量file包含file.txt希望這能澄清事情。
查看完整描述

3 回答

?
墨色風雨

TA貢獻1853條經驗 獲得超6個贊

const str   = String.raw`Desktop\Folder\file.txt`;

const parts = str.split(`\\`);

const file  = parts.pop();

const path  = parts.slice(0).join(`\\`);


console.log(file)

console.log(path)

注意:我用來String.raw保留正斜杠,你可能不需要這個



查看完整回答
反對 回復 2023-08-21
?
慕妹3146593

TA貢獻1820條經驗 獲得超9個贊

您可以使用 stringsubstring來獲取斜杠的最后一個索引(因為這是一個很好的指示器filename.type。


這 \\ 只是為了逃避 \


例子:


function splitPath(path) {

  return {

    path: path,

    file: path.substring(path.lastIndexOf('\\') + 1, path.length)

  };

}


const path = 'C:\\Users\\alexr\\Desktop\\filename.type';

console.log(splitPath(path));


查看完整回答
反對 回復 2023-08-21
?
DIEA

TA貢獻1820條經驗 獲得超2個贊

您需要像這樣分割文件路徑,


JSON.stringify(str).split("\\");

這里不需要改變你的輸入,如果你想分割帶有反斜杠的字符串,那么使用,


.split("\\")

片段如下,


const str = "Desktop\filename.type";


const res = JSON.stringify(str).split("\\");

const result = JSON.parse(res).split(',');


const path = result[0];

const file = result[1];


console.log(path);

console.log(file);

編輯:


好吧,這就是我使用 的原因JSON.stringify(),因為字符串有反斜杠,它會忽略后面的下一個字符backslash,因此要獲取實際的字符串,這里我使用了,JSON.stringify..您可以在下面的控制臺中找到兩者之間的區別。


const str = "Desktop\filename.type";

console.log(str);

console.log(JSON.stringify(str))


console.log(JSON.stringify(str));

當你分割實際的字符串時,


.split("\\"),

結果將是單個字符串數組..


const str = "Desktop\filename.type";


console.log(str.split("\\"));


查看完整回答
反對 回復 2023-08-21
  • 3 回答
  • 0 關注
  • 217 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號