请问如何在ASP.NET(C#)中实现Foxmail和Outlook的CSV地址薄导入功能?
最主要是实现映射输入字段。
请给出相关例子或代码,谢谢!

解决方案 »

  1.   

    从Foxmail OR Outlook 中导出CSV,
    上传到服务器上
    从服务器上用程序导入
      

  2.   

    CSV使用顿号(;)做为分隔符,楼主使用记事本打开即可查看它的内部信息。
      

  3.   

    TO:net_lover(孟子E章)
    ------------------------------
    我的意思是说在我的ASP.NET(C#)项目中做一个:将FoxMail导出的CSV文件导入到我的ASP.NET(C#)项目中的功能,有类似FoxMail中的映射功能,可以选择相应的CSV文件中的标题映射为我指定的字段(因为FoxMail的字段和我的设计不同),并且可以选择导入的字段。最后将设置好的数据导入我ASP.NET项目的MS SQL数据库中。
      

  4.   

    csv文件是txt格式的文件,除了第一行是字段外,其它都是数据,你可以不管字段,就当成已经映射过来的。
    参见
    http://blog.csdn.net/net_lover/archive/2005/06/13/393579.aspx
      

  5.   

    也可以StreamReader读取出来,一行一行分析啊
      

  6.   

    net_lover(孟子E章)
    ---------------------------------------非常感谢,不过我现在的难题不在于数据绑定,而是在如何设置映射和导入数据的处理。
    例:
    Foxmail的字段为A,B
    而我的数据字段可能为A,AB,AC,AD,AE...
    我需要通过设置导入映射将Foxmail的数据列导入我的表中的对应列中(要能通过映射自动识别,没有的列用空值填充)。
      

  7.   

    这个的主要难度在于,Foxmail导出的CSV文件的字段数不能确定,因为是用户选择的,有多有少,而且和我的表中的列名不同也不对应,所以要用到字段映射来转换。
      

  8.   

    字段数不能确定?Foxmail导出时,如果没有选择的字段应该仍然会以;号分隔吧?楼主检查一下看看否则真是无法确定了
      

  9.   

    to:kssys() 
    --------------------------
    foxmail导出时没有选中的字段是不会出现在CSV文件中的。
      

  10.   

    不确定的字段数量,那么foxmail应该也无法判断用户选择了那个了段才对啊疑惑中
      

  11.   

    很多软件的导出都是任意列的,这时候你只能先根据CSV创建表(例如DataSet),然后根据CSV表头一列一列复制到你的目标表。你想要自动表头匹配?应该没有这回事。
      

  12.   


    private void btnExport1_Click(object sender, System.EventArgs e)
    {
    // 导出所有数据
    try
    {
    // 获取要导出的数据库
    DataTable dtEmployee = ((DataSet) Session["dsEmployee"]).Tables["Employee"].Copy();

    // 将所有数据导出到 CSV文件
    RKLib.ExportData.Export objExport = new RKLib.ExportData.Export("Web");
    objExport.ExportDetails(dtEmployee, Export.ExportFormat.CSV, "EmployeesInfo1.csv");
    }
    catch(Exception Ex)
    {
    lblError.Text = Ex.Message;
    }
    }
      

  13.   

    在www.phei.com.cn上有一本ASP.net网络编程的代码, 你可以下载下来看看。在第18章。
      

  14.   

    楼上的各位可能都没有试过Foxmail的那个字段映射,正因为Foxmail也不能确定用户的CSV文件的字段是否对应它本身的格式,所以才有了字段映射这个功能,这个功能是让用户将CSV文件中的“字段”映射到Foxmail的对应的字段,然后才导入数据的。
      

  15.   

    试试在Foxmail中导入Outlook导出的CSV文件就明白这个功能了。
      

  16.   

    我有个想法,就是将MS SQL中地址薄的字段放入一个临时表中,通过用户的映射设置,组织insert into table select ...语句。
    希望看到高效的解决方法。
    :)
      

  17.   

    看了一下CSV文件。第一行会有列名,做个映射即可。根据CSV列名,来判断应插入哪些信息。楼主要分析一下FoxMail的列名。
      

  18.   

    很多支持导入/导出/同步的软件都有映射(Mapping)这个功能,甚至是有复杂规则的Mapping,例如Full Name自动分给为两部分和First Name, Last Name进行Mapping。我绝对对于Mapping,根据Mapping条件生成处理单行数据的SQL然后逐行数据处理会比较好,要整个表一次性实现Mapping会比较难。
      

  19.   

    看了一下CSV文件。第一行会有列名,做个映射即可。
    ---------------------------------------------------------
    我就是不会做这个映射,能给个例子吗?
      

  20.   

    招.net开发工程师,有兴趣的可以投递简历至: 
    [email protected]