作者don750421 (1+1≠2)
看板C_and_CPP
標題[問題] 程式序列化
時間Tue May 8 21:18:20 2012
小弟最近正要修改公司內某位前輩將近10年前寫的程式
當時是使用Visual C++ 6.0 +MFC架構
其程式主要用途,是根據不同的檔案套用不同的範本做取代及刪除的動作
假設,目前有3個檔案(EX.ABC.txt、DEF.txt、GHI.txt),皆為文字檔
而ABC.txt的檔案內容假設為...123.456.789...
而DEF.txt的檔案內容假設為###ABC.789.456###
而GHI.txt的檔案內容假設為OOOOO.123.OOOOO
程式開啟時,會先去讀取某個Template檔案,假設Template檔名為Modify.tpl
Modify.tpl內容主要的就是一些參數設定檔
假設Modify.tpl內有三個Template1、Template2、Template3
當讀取ABC.txt檔案時,我可以選擇使用Template1
將內容.取代成X,而程式Output就是XXX123X456X789XXX
當讀取DEF.txt檔案時,我可以選擇使用Template2
將內容#取代成?,而程式Output就是???ABC.789.456???
問題來了,在程式內有個選項是可以新增修改刪除這些Template
但是,如今,如果我新增一個欄位...原本舊版本的Template就無法使用
程式會出現格式錯誤...
因此,想請問一下,由序列化產生出的檔案(Template),
如果新增一個欄位,有辦法不用重建全部的Template嗎?
不然如果我的Template有100筆,而我只新增一個欄位...
所有的Template就不就要重建??
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.171.194.23
→ loveme00835:如果有標頭等資訊的話, 你可以把新增的欄位存在所有 05/09 04:17
→ loveme00835:Template之後 05/09 04:17
推 damody: 他正在等待你幫他換GUI 05/09 06:13
推 flylover:新增欄位後,寫一個讀取現有的Template檔,並寫入新欄位 05/09 09:58
→ don750421:沒有標頭等資訊,我產生了一筆Template檔案,如載點檔案 05/09 23:03
→ stupid0319:修改原來的程式應該就可以了吧 05/10 01:02