2017-07-05 9 views
-5

私はこのコードを持っていますが、私はプログラムを実行すると私にこのエラーが表示されますSystem.FormatException:入力文字列が正しい形式ではありません 'を変換します。例外ToInt32 dans c#

 public static void Main(string[] args) 
    { 

     string a =TextFormater("Teste teste "); 

     Console.WriteLine(a); 
    } 
    public static string TextFormater(string ChaineTextArea) 
    { 
     string val = string.Empty; 
     string Valreturn = string.Empty; 
     int result; 
     for (int i = 0; i <= ChaineTextArea.Length; i++) 
     { 
      val = ChaineTextArea.Substring(i, 1);  
      var chars = val.ToCharArray(); 

      result = Convert.ToInt32(val); 

      if (result != 13) 
      { 
       Valreturn= val; 
      } 

      else 
      { 
       Valreturn= "<br>" + val; 
      } 
     } 
     return Valreturn; 
    } 
+0

エラーが働いている有効な形式ではありません。 at System.Number.StringToNumber(String str、NumberStylesオプション、NumberBuffer&number、NumberFormatInfo情報、ブールparseDecimal) at System.Number.ParseInt32(String s、NumberStylesスタイル、NumberFormatInfo情報) at System.Convert.ToInt32(文字列値)Rextester.Program.TextFormater(String ChaineTextArea) Rextester.Program.Main(String [] args)の – Narjis

+3

「Teste teste」のどの部分が数字であると思いますか? –

+0

アルファベットを数字に変換しようとしていますか? – Sujith

答えて

-1

私はあなたが達成しようとしているかわからないint.Parse(val)

または

Int32.TryParse(val, out number); 
-1

を変換するためにそれを試してみてください。文字列をint型に変換しようとすると無効な変換が行われますが、val型がint型かstring型でint型を使用しようとした場合tryParse

0

入力は整数に変換するための有効な形式ではありません。あなたはそれらの文字のASCII値を必要とする場合は、それがこの

string input = "Teste teste "; 
var values = Encoding.ASCII.GetBytes(input); 
foreach(var item in values) 
{ 
    Console.WriteLine(item); 
} 
Console.ReadLine(); 

で役立つことを願っを配置することができます。 System.FormatException:入力文字列が正しい形式ではありませんでした

+0

さて、あなたはどういう質問だったのか教えていただけますか?彼がやろうとしたこと –

+0

私は彼が何をしたいのか分からないと思う。さて、彼は今考えていると思うよ – shahjahan

+0

あなたは未知の質問のためにここに答えているのですか? –

0

は、私はこのコードにより訂正と

val = ChaineTextArea.Substring(i, 1);  
char []chars = val.ToCharArray(); 
result = Convert.ToInt32(chars[0]);