의 데이터를 저장하는 방법 C#txt file?
-
21-12-2019 - |
문제
나는 새로운 프로그래밍고 얼굴에 어려움이 있습니다.을 저장할 수 있도록 노력 하겠 데이터를 나를 생성(WPF DataGrid
로)텍스트 파일입니다.
이것은 무엇을 나는 현재:
MainWindow.xaml.cs:
private void SaveButton_Click(object sender, RoutedEventArgs e)
{
string fileName = @"D:\projects\PersonInfos\Files\PersonInfos_Copy.txt";
PersonInfosTable.ConvertToTXTFile(fileName);
}
PersonInfosTable.cs:
public void ConvertToTXTFile(string fileName)
{
StringBuilder sb = new StringBuilder();
System.Text.Encoding Output = null;
Output = System.Text.Encoding.Default;
foreach (PersonInfos personinfos in PersonInfoDetails)
{
if (PersonInfos.SelectCheckBox == true)
{
string line = String.Format("L§" + personinfos.FirstName + "§" + personinfos.LastName + "§");
sb.AppendLine(line);
StreamWriter file = new StreamWriter(fileName);
file.WriteLine(sb);
file.Close();
}
}
}
불행하게도,이 작동하지 않습니다. PersonInfosDetails
의 형식 ObservationCollections<T>
고 SelectCheckBox
는 확인란을 선택한 사용자에 의해,그리고 나타내는 파일을 사용자가 저장합니다.
어떤 아이디어나 제안이 있으십니까?나는 당신의 도움을 주셔서 감사합 그래서 많은 그리고 당신을 순전히 감사하는 시간!
해결책
그것이 무엇인지 명확하지 않은 SelectCheckBox 을 제공합니다.그러나,당신은 당신이를 이동해야에 쓰는 프로그램의 일부 외부합니다.루프 안에서 추가 모든 사람에게 정보를 StringBuilder 인스턴스입니다.
public void ConvertToTXTFile(string fileName)
{
StringBuilder sb = new StringBuilder();
System.Text.Encoding Output = System.Text.Encoding.Default;
foreach (PersonInfos personinfos in PersonInfoDetails)
{
// Collect every personinfos selected in the stringbuilder
if (personinfos.SelectCheckBox == true)
{
string line = String.Format("L§" + personinfos.FirstName + "§" + personinfos.LastName + "§");
sb.AppendLine(line);
}
}
// Now write the content of the StringBuilder all together to the output file
File.WriteAllText(filename, sb.ToString())
}
다른 팁
을 시도했다 방법:쓰기 텍스트 파일(C#프로그래밍 가이드)?
또한,코드에 제공된 작동하지 않습니지 SelectCheckBox
은 정전성 PersonInfos
클래스입니다.당신은 아마이 있을 변경할 if
문의
if (personInfos.SelectCheckBox == true)
{
// ...
}
제휴하지 않습니다 StackOverflow