冒险解谜游戏中文网 ChinaAVG

标题: ini文件型字幕文件的整合工具设计 [打印本页]

作者: shane007    时间: 2010-8-16 23:47
标题: ini文件型字幕文件的整合工具设计
有些游戏的字幕文件是ini文件型的,由于游戏版本的不同,ini文件的内容可能会有少许不同。: u7 W. i  {9 r0 _* R: q
2 M  I: B& a2 \, p8 {* ]. @3 v5 U: F0 t
举例说明如下,我们翻译了一个B.ini文件,但是,最后发现这只是个测试版。
% |' ~! t% j, }; _: S* u正式版的文件是A.ini。我们要把B.ini中的项目整合copy到A.ini中去。
9 S; V) X& \* s
" U1 |7 _7 P  n* g+ zA.ini 内容如下
* O1 K3 X1 ?3 q: _" O# x  t3 z" V; t, a
[section1]& V/ [) p/ N9 W9 e6 p. i$ U
key1=1
8 o9 T& ~$ R! d5 E4 \, Nkey2=2
" [6 N, A9 R+ Jkey3=3
1 a+ ^; }. `( M6 @key4=40 y( J* }- b2 R) W* b/ q+ q+ h
key5=55 V( m6 L; G5 G; t; t6 u( ]( j2 A" u
% y# ]( P3 N, v1 P
[section2]' }9 M% Q, ]7 m- c' }
key1=1
2 X' D3 z# B+ F$ T; e) }key2=2
6 d4 b- C% |6 E* w" Gkey3=3: A, y: c$ w6 Q( y7 Z. u& W& a
% s. e% J# S8 ?2 |& I9 q6 n
B.ini 内容如下( O& z  ^, K* m- R

7 U6 T6 E4 G7 X: ][section1]5 i6 X: Y; k" W
key2=a2
$ y- M( \- B6 X% }% S+ X- m0 V: e# akey3=a37 m1 i, R7 T9 w# L8 |
key4=a4
0 Y! a( M) x3 h" i4 m  mkey6=a6, P& p/ s& k" x7 _& T+ ?4 Y, x0 ^

1 E. D3 B. a* H8 j0 o! f3 Z9 q[section2]" f, q9 `9 I. D
key3=b3
  u$ T) G$ C% e+ j# z" b, Jkey4=b4% o0 K0 I0 a2 b0 Y/ c$ y! v$ k) t

+ I* X2 w! Y9 {& f) ~- t- S# X6 d整合后A.ini 内容要求是如下这样* u0 G& T. Y' A8 ~0 ^
[section1]8 ^/ ^1 K2 Y0 J# Q  s+ X( I
key1=1. f) f) P- J7 e! k
key2=a2
6 w0 Y$ s3 I1 A3 s7 Akey3=a37 ]& U- y$ t6 i1 y
key4=a4
* p$ N9 n3 ]) k% C( ~/ b& G6 Z/ t1 Zkey5=5
" d. U$ [+ S5 F! s( G
+ P8 `) e. S; u6 T  \3 \8 ^[section2]( w' J& A. ?6 k: W
key1=1
) r) ?) f, U+ v! k/ }key2=2, f- `! h8 i/ `% c; P/ o
key3=b3
1 l% s* a, V% b1 N4 Z
) R* ~' t7 G, x" M请设计一个图形界面工具来完成。
作者: 乐学    时间: 2010-8-19 10:21
先读取B文件,再写到A文件# m) c! o* ^3 F  z% B
只读取A中需要的内容' }8 c8 U  H( J3 w2 c2 ?" G# Q
从B中读出空字符,不写入A
作者: shane007    时间: 2010-8-19 11:14
我看了一下,对于我给的这个特定的例子,功能是对了。
9 M# V7 `3 F5 e" @3 }1 G( u但是,题目要求是做成通用的。ini的内容预先是不知道的。9 C7 J  Q0 u0 p% c. V" C7 J
估计你现在的版本还不是通用的,只能针对这个特定的例子,请改造为通用的吧。
作者: 乐学    时间: 2010-8-20 21:03
标题: 回 2楼(shane007) 的帖子
恩,明白了,晚上改改
作者: 乐学    时间: 2010-8-20 21:06
逻辑是不是这样:$ {7 c( w( `. B% H) G. ~7 F
先从A中读出需要的项,再从B中读出不一样的项,改写进去?
作者: shane007    时间: 2010-8-20 21:15
标题: 先从A中读出所有的项,然后从B中取值
引用第4楼乐学于2010-08-20 21:06发表的  :: ^0 f; P; a1 X$ m- f
逻辑是不是这样:
+ k# I' p9 D/ y0 R+ k& e1 M2 b先从A中读出需要的项,再从B中读出不一样的项,改写进去?

6 j9 c& R( C1 A先从A中读出所有的项,然后从B中取值,取不到的保留A原来的值。
作者: 乐学    时间: 2010-8-26 08:29
标题: 回 5楼(shane007) 的帖子
恩,明白了,到学校,继续弄~




欢迎光临 冒险解谜游戏中文网 ChinaAVG (https://chinaavg.com/) Powered by Discuz! X3.2