当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 解决CSV字段数据带有双引号的问题

ASP.NET
LCS问题算法之VB.net版
一个自定义LABEL组件的C#源代码
在C#中使用XML指南之读取XML
Asp.Net页面输出到EXCE
DataGrid脚眉显示合计
类似BOOLEAN列的DATAGRIDTEXTBOX的改进
在.net中调用存储过程的另一种方法
.net中窗体的调整
按钮列的应用
带颜色的listbox控件
可拖动的无标题栏窗体
正弦函数的绘制的一种方法
使用反射实现根据名称动态创建窗体的几种方法
运行时拉伸和移动控件的类
字符串根据多个字符进行分割的一种方法
使用递归从数据库读取数据来动态建立菜单
设置tabcontrol控件选项卡的字体为竖着的
容器中控件的拖动
单元测试辅助类
VB.net 调用带参数存储过程

ASP.NET 中的 解决CSV字段数据带有双引号的问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 199 ::
收藏到网摘: n/a

主要解决CSV字段数据带有双引号的问题

具体代码如下:

以下为引用的内容:

        Public Function ChangeCsvSplitLine(ByVal strLine As String, ByVal iColNumber As Integer) As String()
        Dim strList() As String = strLine.Split(",")
        If strList.Length = iColNumber Then
        Return strList
        End If

        Dim i As Integer = 0
        Dim findSplitIndex As Integer = -1
        Dim index As Integer = 0
        Dim returnList(iColNumber) As String
        Dim strMerger As String = ""
        For i = 0 To strList.Length - 1
        If findSplitIndex = -1 Then
        If (strList(i)(0) = """" And strList(i)(strList(i).Length - 1) <> """") _
        Or (strList(i).Length = 1 And strList(i) = """") Then
        findSplitIndex = i
        Else
        returnList(index) = strList(i)
        index = index + 1
        End If
        Else
        If (strList(i)(0) <> """" And strList(i)(strList(i).Length - 1) = """") _
        Or (strList(i).Length = 1 And strList(i) = """") Then
        strMerger = ""
        For findSplitIndex = findSplitIndex To i
        strMerger = strMerger & strList(findSplitIndex) & ","
        Next
        strMerger = strMerger.Substring(0, strMerger.Length - 1)
        returnList(index) = strMerger
        index = index + 1
        findSplitIndex = -1
        End If
        End If
        Next
        Return returnList
        End Function