0

以下のコードを使用してファイルパスを取得しようとしました。

string script = File.ReadAllText(Application.StartupPath + "D:\\Tax Rouding   Projects\\10-12-12 TaxRoundingUtility\\TaxRoundingUtility\\Scripts\\GP_SOP_AdjustTax.sql");

しかし、エラーが発生しています:指定されたパスの形式はサポートされていません

Windowsエクスプローラーからファイルを開こうとすると..ファイルの場所に行くことができます..

D:\Tax Rouding Projects\10-12-12 TaxRoundingUtility\TaxRoundingUtility\Scripts\

しかし、なぜ私はC#コードを使用できないのですか...

パスで見逃したもの...

4

1 に答える 1

1

問題はここにあります

Application.StartupPath + "D:\Tax Rouding Projects\10-12-12 TaxRoundingUtility\TaxRoundingUtility\Scripts\GP_SOP_AdjustTax.sql"

これはあなたに次のようなものを与えるかもしれません

"c:\program files\myappfolder\D:\Tax Rouding Projects\10-12-12 TaxRoundingUtility\TaxRoundingUtility\Scripts\GP_SOP_AdjustTax.sql"

これは無効なパスです。必要なパスの部分のみを追加します (2 番目の部分は単なる例です)

Application.StartupPath + @"\TaxRoundingUtility\Scripts\GP_SOP_AdjustTax.sql".

また、ファイル パス文字列の '\' を必ずエスケープしてください。

編集: Dante が質問のコメントで述べたように、ターゲット パスが固定されていて既知の場合、Application.StartppPath は必要ありません。完全なパスがあるファイルをロード/読み取るだけです。

于 2012-12-10T07:22:16.653 に答える