Manipulate CSV File

上一篇 / 下一篇  2009-06-29 17:07:04 / 个人分类:SilkTest & 4Test

    [+] LIST OF STRING ReadCsvFile(String sName)
     [ ] LIST OF STRING laValues = {}
     [ ] String sPath
     [ ] STRING sLine
     [ ] HFILE hFile
     [ ]
     [ ] sPath = GetProgramDir() + "\"+ sName
     [ ] rep.LOG_INFO (NULL, "The csv path is {sPath}",rep.INFO)
     [ ]
     [ ] hFile = FileOpen (sPath, FM_READ)
     [-] while (FileReadLine (hFile, sLine))
      [ ] ListAppend(laValues, sLine)
      [ ] rep.LOG_INFO (NULL, "The csv content includes {sLine}",rep.INFO)
     [ ] FileClose (hFile)
     [ ]
     [ ] return laValues
    [ ]
    [+] STRING ReadCsvFiled(String sName, String sFiledName, Integer index optional)
     [ ] LIST OF STRING laValues = {}
     [ ] LIST OF STRING laItems = {}
     [ ] INTEGER i
     [ ] INTEGER iFieldNum
     [ ] STRING sItem
     [ ]
     [ ] laValues = ReadCsvFile(sName)
     [-] for i = 1 to 50
      [ ] sItem = Trim(GetField(laValues[1], ",", i) )
      [-] if(sItem== "")
       [ ] break
      [-] else
       [ ] ListAppend(laItems, sItem)
       [ ]
     [ ] iFieldNum = ListFind(laItems, sFiledName)
     [ ] rep.LOG_INFO (NULL, "The filed index is {iFieldNum}",rep.INFO)
     [ ]
     [-] if(IsNull(index))
      [ ] return GetField(laValues[2], ",", iFieldNum)
     [-] else
      [ ] return GetField(laValues[index], ",", iFieldNum)
     [ ] 
    [ ]
    [+] UpdateCsvFile(String sName, String sFiledName, String sw, Integer index optional)
     [ ] LIST OF STRING laValues = {}
     [ ] LIST OF STRING laItems = {}
     [ ] INTEGER i
     [ ] INTEGER iFieldNum
     [ ] String sLine
     [ ] String sPath
     [ ] String sItem
     [ ]
     [ ] laValues = ReadCsvFile(sName)
     [ ] sPath = GetProgramDir() + "\"+ sName
     [ ] rep.LOG_INFO (NULL, "The csv path is {sPath}",rep.INFO)
     [ ]
     [+] for i = 1 to 50
      [ ] sItem = Trim(GetField(laValues[1], ",", i) )
      [-] if(sItem== "")
       [ ] break
      [-] else
       [ ] ListAppend(laItems, sItem)
       [ ]
     [ ] iFieldNum = ListFind(laItems, sFiledName)
     [ ] rep.LOG_INFO (NULL, "The filed index is {iFieldNum}",rep.INFO)
     [ ]
     [ ]
     [+] if(IsNull(index))
      [-] for i=2 to ListCount(laValues)
       [ ] sLine = strTran(laValues[2], GetField(laValues[2], ",", iFieldNum), sw)
       [ ] rep.LOG_INFO (NULL, "The modified line is {sLine}",rep.INFO)
       [ ] ListInsert (laValues, i, sLine)
       [ ] ListPrint(laValues)
       [ ]
       [ ] ListDelete(laValues, i+1)
       [ ] ListPrint(laValues)
     [-] else
      [ ] sLine = strTran(laValues[index], GetField(laValues[index], ",", iFieldNum), sw)
      [ ] rep.LOG_INFO (NULL, "The modified line is {sLine}",rep.INFO)
      [ ] ListDelete(laValues, index)
      [ ] ListInsert (laValues, index, sLine)
     [ ] ListWrite(laValues, sPath, FT_ANSI)

TAG:

 

评分:0

我来说两句

日历

« 2024-04-26  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 13875
  • 日志数: 28
  • 书签数: 1
  • 建立时间: 2009-04-02
  • 更新时间: 2010-06-09

RSS订阅

Open Toolbar