VB代码:
   dim sfileName() as variant
  redim Preserve sfileName(0):sfileName(0)=“分州市.shp”
   redim Preserve sfileName(1):sfileName(1)=“县界.shp”
   redim Preserve sfileName(2):sfileName(2)=“地级市区.shp”把以上代码改成C#代码怎么改呀?呵呵 多谢大家回复呀。

解决方案 »

  1.   

    redim C# 不支持
    可使用List<String>
    hashtable
    dictionary
      

  2.   

    Object 数据类型取代了 Variant
    从语义上看,不过是定义了一个数组,并且不断扩大他的大小而不丢失数据,并赋值字符串,所以可以不用object,用string可能更好  dim sfileName() as variant
      redim Preserve sfileName(0):sfileName(0)=“分州市.shp”
      redim Preserve sfileName(1):sfileName(1)=“县界.shp”
      redim Preserve sfileName(2):sfileName(2)=“地级市区.shp”==========   string[] sfileName = { "分州市.shp", "县界.shp", "地级市区.shp" };很简洁的一句话就可以了
      

  3.   

    如果一定要一一对应
                System.Collections.ArrayList sfileName = new System.Collections.ArrayList();
                sfileName.Add("分州市.shp");
                sfileName.Add("县界.shp");
                sfileName.Add("地级市区.shp");
      

  4.   


    LZ明显不是想这样用的,他是动态添加的,初始化的时候根本不知道有几个建议LZ考虑一楼的意见
      

  5.   

    白灵的思路很正确,我的是目的是动态添加一个或者几个图层,所以没法用固定大小的数组进行管理。这个在VB中可以定义变量Variant来进行设计,呵呵 我看了下C#里面没有 所以想看看大家有没有能把这个dim sFileName as variant 变换成c#里面也能表达的这个意思不。呵呵  我去试试一楼的方法看看 呵呵
      

  6.   

    variant就是Object类型了,如果存储的数据类型除了字符串还有别的,那就用不是泛型的集合,否则就用泛型集合