Trados功能强大,各位大概都知道。但文档格式多种多样,就不是每一样trados都能顾及得到。特别涉及到一些比较特殊的格式的文件。例如,json。下面我来介绍怎么去解决这个问题。

解决之前要首先了解什么是json格式的文件,json是javascript object notation的简写,可以说,JSON是原生于javascript的子集。同时也独立于语言,是一种轻量级的数据交换格式。说到这里,大家是不是觉得这格式和曾经学过的某种格式很类似呢,的确,就是它xml。但JSON比XML更小,更快,更容易解析。当然了,这里说的xml是特指xml document,就是xml数据文档。

问题分析,trados是支持xml翻译的,用tageditor,能有效处理xml的翻译,另外用sdlx也是可以的,对相应的字段进行锁定。知道了这个就好办,下一步要解决的是,json和xml之间的转换。

摘录某文章的描述就是 json与xml的不同之处:1.没有结束标签,2.更短,3.读写速度更快,4.能够使用内建的javascript eval()方法进行解析,5.使用数组,6.不使用保留字

JSON具有以下这些形式:

对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。

官方也有这样的介绍

“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object,纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。

值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。

比较两者的数据结构

JSON:

{

“employees”: [

{ “firstName”:”Bill” , “lastName”:”Gates” },

{ “firstName”:”George” , “lastName”:”Bush” },

{ “firstName”:”Thomas” , “lastName”:”Carter” }

]

}

从上面可见,结构简单,但很清晰,内含结构并列的数组。

XML:

 

George

John

Reminder

Don’t forget the meeting!

上面的是xml的文档,大伙应该都见过不少,第一行编码,之后的按节点编排

常规情况下考虑,XML转JSON,考虑到JSON的数据表现可以对象,也可能是数组,所以这时得惦记这事。再有对于XML里面的CDATA标签的内容,得特别关注,因为json注释不一样。查遍网络,很难发现一款十分专用的软件来转换。