パス内のSystem.ArgumentExceptionの不正な文字
-
21-08-2019 - |
質問
私はPath.Combineを使用していて、文字列のいずれかは、Unicode文字が含まれています。 Iは{} System.ArgumentExceptionの例外を取得します。パス内の不正な文字。
MSDN のファイルパス/名前によるUnicode文字を持つことができます。なぜ私はこの例外を得るのですか?
編集: ここでは、コードは次のとおりです。
Path.Combine( "C:\ PDM \シルバー"、 "AmabelベンダーQQQ")
解決
私はこの問題を考え出しました。 2番目の文字列は、例外を発生させ、その中に「タブ」の文字が含まれています。 (私はここに文字列を貼り付けたときに現れたしなかった)。
おかげでみんなと混乱して申し訳ありません。
他のヒント
あなたは二重引用符を有していてもよくするパスのあなたのセットで、以来、 Path.InvalidPathChars
する二重引用符が含まれます。
それはあなたのUnicode文字に関係のない、あなたの例外になるだろう...
<時間>ちょうどあなたの質問のあなたの編集を見た:VB、引用符なし。
。だから、あなたは自分の「QQQ」という文字列の前に、スペースのように見えるあなたの2番目の文字列にコピーされた非印字可能な文字を持っているかもしれ?
"Amabel BenderQQQ"
または"AmabelBenderQQQ"
作業が(それが空白「QQQ」文字またはに関連している場合だけでテストする)場合も試してみてください。
あなたがC#を使用している場合は、私はあなたがバックスラッシュをエスケープする必要があると確信している。
Path.Combine("C:\\PDM\\Silver","Amabel Bender QQQ")
は適用されませんあなたががVBを使用している場合...
所属していません StackOverflow