在数据库中已经构建好了一个数组的字符串,如表A中有个字段名为arr_a,里面的数据为"a","b","c"在创建数组的时候
string[] test_arr=new string[] {read["arr_a"]}
这里read是读出除了一条唯一记录的数据集.但是在打印他的时候
 Label3.Text=test_arr[0].ToString();
得出的结果是"a","b","c" 而不是我想要的a实在是不知道怎么办了.麻烦各位了....

解决方案 »

  1.   

    string[] test_arr=new string[] {read["arr_a"]} ==string[] test_arr=new string[] {'"a","b","c"'} 也是把"a","b","c"当前一个字符串了
      

  2.   

    自己稍微处理一下不就可以了:
    string arr[] = test_arr[0].ToString().Split(',');
    Label3.Text = arr[0].Trim('\"');
      

  3.   

    read["arr_a"]的值是"\"a\",\"b\",\"c\"",
    内容为"a","b","c" 的一个字符串。而不是你希望的以逗号分隔的三个字符串。
      

  4.   


    这里因为test_arr是个来自于数据库的动态值,所以......要用变量的方式出现.
    这是相当于我再定义一个分割字符串的数组出来,
    也就相当于是 string arr_test[]= read["arr_a"].Tostring().Split(',');
    感觉这样还不够精简.
    这里就是想找找看比较精简的方式.多谢回答了.继续等待更好的办法....
      

  5.   


    这里我也考虑过转义符这个问题,我把数据库中的数据修改为\"a\",\"b\",\"c\"test_arr[0].ToString(); 得到的结果也就是\"a\",\"b\",\"c\"........
      

  6.   

    既然不想要双引号,那不如在数据库中直接去掉
    Set arr_a = Replace(arr_a,'"','') 
    大概是这样。。
      

  7.   

    看样子只能在读取数据后用split了.把原有数据改成a,b,c
    然后用split分出来到数组中.string[] test_arr=read["arr_a"].ToString().Split(',');Label3.Text=test_arr[0].ToString(); 这样结果就正确了.结贴了...
      

  8.   

    只是为了得到一个数组.而且数据是,号分隔.直接
    if(read["arr_a"]!= null)
    string[] test_arr= read["arr_a"].Split(',');