c# - C#:テキストファイルへの変数の挿入

原文 c# string text-files

概要:変数をテキストファイルに挿入します。周りを見回してみたのでダメ。おそらく私は間違ったキーワードで検索しています。私は文字列に変数を挿入することを知っています、それは単純です:

string str1 = "hello {0}";
string str2 = "world";
string final = string.Format(str1, str2); //Output should be "hello world"


同じ考え方に従って、str1のテキストファイルを作成し、テキストファイルを文字列変数に読み込み、上記のプロセスを繰り返しました。

str1.txt:

hello {0}


コード:

string str1 = System.IO.File.ReadAllText(@"..\..\str1.txt"); //Should load the text file as a string
string str2 = "world"
string final = string.Format(str1, str2); //Output should be "hello world"


現在、string.Formatを呼び出すと「入力文字列が正しい形式ではありませんでした」というエラーが表示されますが、その理由はよくわかりません。

編集:私は十分な情報を提供しなかったと思います。ごめんなさい!変数を挿入しようとしているテキストファイルは、さまざまな場所に{0}、{1}、...が挿入されたクラスのテキストファイルです。
答え
私は自分のコードサンプルを私のマシンで実行しましたが、期待どおりに動作します。 str1.txtファイルの内容を見て、パスが正しく解決されることを確認することをお勧めします。それでも機能しない場合は、ファイルのエンコーディングを確認してください。

また、ファイル内の{}の文字に注意してください。それらを2倍にしてエスケープするか、コードを次のように置き換えます。

string str1 = "hello {0}";
string str2 = "world";
string final = str1.replace("{0}", str2); //Output should be "hello world"
関連記事

c# - エンティティフレームワークで作成されたデータベースからヘルパーのドロップダウンリストにアイテムをロードする

c# - Web APIのリクエストに一致する複数のアクションが見つかりました

c# - 日付ピッカーのドロップダウンリストから日付を無効にする

c# - TFSがビルドのgit reposを複製しているときのAppDomainUnloadedException

c# - SQL例外をスローするASP.Netフォーム

c# - 負の角度でも正の値を返すPIDコントローラー

c# - ルールアセンブリを読み込めません

c# - 画像ボタンに画像を読み込む

c# - LINQ-インクルード、カスタム関数を使用してカスタムタイプを返そうとしています。インクルードが機能しない

c# - aspxページの抽象クラスを継承します