コード例 #1
0
        public void Save()
        {
            string fileName = AppHost.StdDialogs.GetSaveFile("", "", LangMan.LS(LSID.LSID_GEDCOMFilter), 1, GKData.GEDCOM_EXT, "");

            if (string.IsNullOrEmpty(fileName))
            {
                return;
            }

            TreeTools.CheckRelations(fSplitList);

            var tree = fBase.Context.Tree;

            GKUtils.PrepareHeader(tree, fileName, GlobalOptions.Instance.DefCharacterSet, true);

            using (StreamWriter fs = new StreamWriter(fileName, false, GEDCOMUtils.GetEncodingByCharacterSet(tree.Header.CharacterSet.Value))) {
                var gedcomProvider = new GEDCOMProvider(tree);
                gedcomProvider.SaveToStream(fs, fSplitList);
            }
        }
コード例 #2
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            string fileName = AppHost.StdDialogs.GetSaveFile("", "", LangMan.LS(LSID.LSID_GEDCOMFilter), 1, GKData.GEDCOM_EXT, "");

            if (string.IsNullOrEmpty(fileName))
            {
                return;
            }

            TreeTools.CheckRelations(fSplitList);

            GKUtils.PrepareHeader(fTree, fileName, GlobalOptions.Instance.DefCharacterSet, true);

            using (StreamWriter fs = new StreamWriter(fileName, false, GEDCOMUtils.GetEncodingByCharacterSet(fTree.Header.CharacterSet)))
            {
                var gedcomProvider = new GEDCOMProvider(fTree);
                gedcomProvider.SaveToStream(fs, fSplitList);

                fTree.Header.CharacterSet = GEDCOMCharacterSet.csASCII;
            }
        }