2014-04-24 2 views
0

단어 검색 제작자 앱이 있습니다. 사용자는 단어, 너비 및 높이 설정, 단어 배치 설정 등의 목록을 입력합니다. 사용자가 저장 버튼을 클릭하면 나중에이 설정을 파일에 저장하여 나중에 저장된 설정. 나는 이것을 어떻게하는지 잘 모른다. (savefiledialog 열기 제외)savedialog를 사용하여 windows form app에서 설정을 저장하는 방법

+0

직렬화에 대해 알고 싶으십니까? http://msdn.microsoft.com/en-us/library/ms233843.aspx –

+0

@ChrisLaplante에 대한 후속 조치로 XML 직렬화를 사용하는 것이 좋습니다. 어떻게 작동하는지 일단 믿어지지 않는 정도로 쉽게 이해할 수 있습니다. 직렬화 할 클래스의 몇 가지 속성과 VOILÀ! http://msdn.microsoft.com/en-us/library/system.xml.serialization.xmlserializer%28v=vs.110%29.aspx – joce

답변

0

SaveFileDialog는 사용자가 저장 위치와 파일 이름을 선택할 수있는 GUI 다른 이름으로 저장 윈도우를 응용 프로그램에만 제공합니다. Dialog에는 mySaveFileDialog.Filename에 액세스 할 수있는 이벤트 핸들러 (FileOK라고 생각합니다)가 있습니다.

아직 실제로 저장되지 않은 데이터 또는 파일이 없습니다. 이를 위해, 당신은 다양한 경로를 취할 수 있지만 단순한는 System.IO.StreamWriter을 사용하고 있습니다 :

using System.IO; 
... 
StreamWriter sw = new StreamWriter(mySaveFileDialog.Filename); //Pass the chosen filename 
sw.WriteLine(string goes here); 
sw.Close(); 

당신은하지만, 데이터의 문자열 표현을 마련 할 것이다.

더 복잡한 유형의 경우 XML 직렬화를 사용하십시오. 당신은 사용 후 클래스와 같은 데이터 구조를 정의 할 수 있습니다 .NET의 System.Xml.Serialization 네임 스페이스에 내장 쉬운에 클래스의 자동 출력 표현 XML 파일 읽기에 :

public class MyWordGame { 
    public string[] myWords; 
    public int height; 
    ... 
} 

... 
XmlSerializer xmlOut = new XmlSerializer(MyWordGame.GetType()); 
xmlOut.Serialize(new FileStream(mySaveFileDialog.Filename), new MyWordGame()); 

당신은 다음을 할 수 있습니다 XML 파일에서 원본 클래스를 복구하기위한 역순으로 (역 직렬화)

XML 직렬화에 대한 자습서가 많이 있습니다.

0

프로젝트 속성을 열고 왼쪽 탭에서 "설정"을 선택하십시오. 여기서 유지하려는 설정을 추가 할 수 있습니다.

 var setting = new Settings(); 
     setting.MyCustomSetting = "UserSeting here"; 
     setting.Save(); 

이 설정은의 app.config에 저장됩니다 : 당신이 다음 사용자에서 원하는 설정대로

enter image description here

캡처 그런 짓을.