如下这个文本格式,怎样快速解析放入CDS中,速度一定要快!!!
Test.txt内容如下:
[{FieldName:"_id",Size:37,DataType:ftString},{FieldName:"_name",Size:131,DataType:ftString},FieldName:"_sc",Size:37,DataType:ftString][["00012","sdfsdf","sdfs df"],["werwer","werwekjr","werwerewr"],["sdfsdferhberfg","werwerew","sdfsdfsdfds"]]注意以上文本没有回车换行,除字符串中间的空格外,其余任何地方均没有空格,这只是一个范本(只有三个字段和三条记录),实际上的东西比这个大得多(一般有七、八十个字段,上万条记录),所以要求速度一定要快,请教诸位老大怎样才能更快的获取呢?谢谢!
分不够可以再加300分.

解决方案 »

  1.   

    其实不管CDS是什么,但我估计也就是个数据库什么的吧。
    这种问题,规则表达式是最好的解决办法。
      

  2.   

    我看这东西几乎就是javascript脚本,考虑用js引擎来做很好。
      

  3.   

    把下面的代码保存为 aaa.htm , 双击打开看看。<script language="javascript">
    <!--
    //fld 是个对象数组
    //dat 是二维字符串数组var ftString = "ftString";var fld = [{FieldName:"_id",Size:37,DataType:ftString},{FieldName:"_name",Size:131,DataType:ftString},{FieldName:"_sc",Size:37,DataType:ftString}];
    var dat = [["00012","sdfsdf","sdfs df"],["werwer","werwekjr","werwerewr"],["sdfsdferhberfg","werwerew","sdfsdfsdfds"]];for(var i=0; i<fld.length; i++) {
      alert(fld[i].FieldName);
      alert(fld[i].Size);
      alert(fld[i].DataType);
    }for(var i=0; i<dat.length; i++)
      for(var j=0; j<dat[i].length; j++)
        alert(dat[i][j]);
    //-->
    </script>
      

  4.   

    to: myy() 
        不错,你的想法就是我的想法的一种而已,其实我写的这种文件格式是叫JSON,是JavaScript可直接使用的一个格式,现在我要做一个程序想用Delphi的客户端也能加载此数据集,所以必须将JSON转换成为TClientDataSet的格式才行。请问你要解析这种文件格式装载到数据集TClientDataSet中需要什么方法才行?注意,速度一定要快。to: ZyxIp(绝望中...)    正则表达式是什么东西,怎么做,请教详细代码,我这边任务比较紧,一定要快点搞好,然后我才去学正则表达式,谢谢!To: All
        如果有哪位大侠能够帮我很快解决问题,另开贴子给他300分,绝不食言。
      

  5.   

    to :tttk(网络芝麻),就是上边那个文本格式,谢谢!
      

  6.   

    [{FieldName:"_id",Size:37,DataType:ftString},{FieldName:"_name",Size:131,DataType:ftString},FieldName:"_sc",Size:37,DataType:ftString][["00012","sdfsdf","sdfs df"],["werwer","werwekjr","werwerewr"],["sdfsdferhberfg","werwerew","sdfsdfsdfds"]]你的第三个字段定义“FieldName:"_sc",...”是不是也应该有{}?
      

  7.   

    是的,是应该有的。
    [{FieldName:"_id",Size:37,DataType:ftString},{FieldName:"_name",Size:131,DataType:ftString},{FieldName:"_sc",Size:37,DataType:ftString}][["00012","sdfsdf","sdfs df"],["werwer","werwekjr","werwerewr"],["sdfsdferhberfg","werwerew","sdfsdfsdfds"]]
    麻烦给看一下。
      

  8.   

    我做了个测试程序,发邮件给我我传给你,如果你觉得速度上可以接受,我会发给你源代码。
    说明:是用规则表达式实现的。我的电子邮件:[email protected]
      

  9.   

    to tttk(网络芝麻)兄,不好意思,我们这里断网,现在才上来,
      

  10.   

    to tttk(网络芝麻)兄:
        邮件已收到,可否把源码发给我,谢谢!
      

  11.   

    tttk(网络芝麻)兄,请到另开的三个贴子接分,谢谢!