2013-06-19 2 views
0

String을 부품 배열로 분할하고 끝에 결합하여 결과 문자열로 만들려고했습니다. 하지만 약간 테스트를 거친 후에 메시지가 나타납니다.C# 숫자 및 문자로 문자열 변환/분할

public string []parts { get; set; } 
    public string inputStr { get; set; } 

    private void inputText_TextChanged(object sender, EventArgs e) 
    { 
     String inputStr = inputText.ToString(); 
     //example 
     //inputStr = "984, fenceshit2, 0, 1994.56025813, -1592.16428141, 16.105, 0.653280779782, 0.270598520636, 0.653281646552, 0.270598879665, -1"; 
    } 

    private void convert_Click(object sender, EventArgs e) 
    { 
     String creObj = "CreateObject("; 
     String result; 
     String[] parts = inputStr.Split(new char[] { ',' }); 

     result = creObj + 
       parts[0] + "," + 
       parts[2] + "," + 
       parts[3] + "," + 
       //...up to "parts[10" 
       ");"; 
     outputText.Text = result; 
     //output(should be in this case): 
     //"CreateObject(984, 1994.56025813, -1592.16428141, 16.105, 0.653280779782, 0.270598520636, 0.653281646552, 0.270598879665, -1);" 
    } 

    //If I need to creat a code line in the main Designer.cs, please let me know. 

난 그냥 문자열을 분할 한 문자열로 결국 그들을 결합 할 : 주요 코드 여기

"NullRefenceException was unhandeled"

Object reference not set to an instance of an object.

: 눌러 convert_click으로

이것을 텍스트 상자에 보냅니다.

누군가가 소스 코드를 원한다면, 나를 보내주십시오.

+0

무엇을'Console.WriteLine (inputStr)'출력 대신

String inputStr = inputText.ToString(); 

그냥 이렇게? –

+0

콘솔 프로그램을 작성하고이 행에 도달하면 inputStr 값을 가진 행을 작성합니다. – Knolle

답변

1

inputText.toString()을 로컬 inputStr에 지정하기 때문에. 기능 inputText_TextChanged 내부, 당신이 정말 대중 하나에 할당해야 할 때 입력 문자열의 로컬 복사본을 선언하는

inputStr = inputText.Text; 
+0

이렇게하면 새로운 문제가 발생합니다. '호출 할 수없는 멤버 'System.Windows.Forms.Control.Text'를 메서드처럼 사용할 수 없습니다. ' – Knolle

+0

inputText가 TextBox 컨트롤이라고 생각했습니다. inputText 컨트롤이 무엇인지 알 수 있습니까? – cissharp

+0

"통제"란 무엇을 의미합니까? – Knolle

0

물품.

inputStr = inputText.ToString();