根據http://msdn.microsoft.com/en-us/library/system.io.path.getinvalidpathchars%28v=vs.110%29.aspxPath.GetInvalidFileNameChars()
應該提供以下輸出GetInvalidFileNameChars()不包含所有非法字符
// Note: Some characters may not be displayable on the console.
// The output will look something like:
//
// The following characters are invalid in a path:
// Char Hex Value
// ", 0022
// <, 003C
// >, 003E
// |, 007C
// ...
//
// The following characters are invalid in a filename:
// Char Hex Value
// ", 0022
// <, 003C
// >, 003E
// |, 007C
// ...
但是我只得到
Char Hex Value
, 0000
/, 002F
什麼繼續?
這取決於環境。這就是全部的原因推遲此任務的庫函數,而不是硬編碼它的基礎上顯然,運行該代碼的機器具有相當寬鬆的文件名/路徑限制 – Servy 2014-12-02 15:49:15
「輸出看起來像* ...的東西*」意味着它說什麼,相同的頁面也注意到「全套無效字符可以因文件系統而異。「 – 2014-12-02 15:49:44
我有一種感覺它可能取決於環境。然而,如果我去掉無效字符(從'Path.GetInvalidFileNameChars()')並執行'Path.GetExtension(Filename)',它仍會拋出無效字符異常。讓我成爲一隻傷心的熊貓! – 2014-12-02 16:02:34