2016-08-11 68 views
2
Dim arr() As String 
Dim a As Integer 
Dim temp As String 
Dim temp2 As String 

a = 0 

Open App.Path & "\EndOfB.txt" For Input As #1 

Do While Not EOF(1) 

    Line Input #1, temp 
    temp2 = temp2 & "," & temp 
    a = a + 1 
    arr = Split(temp2, ",") 

Loop 
Close #1 

家伙,我怎么能删除字符(“)的第一和最后一个阵列?因为如果我在一个文本文件写的,第一和最后一个字符串有这个字符(” )。这是样本输出”。从第一阵列和最后阵列删除字符串

“8时01分04秒 8时16分06秒 10时52分06秒 11点52分21秒”

在此先感谢大家好。:)

+0

你不是在代码的任何地方写它。你是什​​么意思“第一个和最后一个数组” - 你是指数组中的第一个元素和数组中的最后一个元素?你只是写出一个字符串?没有任何意义 – dbmitch

+0

哦对不起,我没有看到它看起来像1字符串。是的,我想说的是数组中的第一个也是最后一个元素。只是忽略空间而放新线。 – CeciliA

+0

每次都在一个数组中。所以它看起来像arr(0)=“08:01:04,arr(1)= 08:16:06,arr(2)= 10:52:06和arr(3)= 11:52:21” – CeciliA

回答

2

你的循环改为

Do While Not EOF(1) 

    Line Input #1, temp 
    temp2 = temp2 & "," & temp 
    a = a + 1 
    arr = Split(temp2, ",") 

    ' Strip first character from first array element 
    arr(LBound(arr)) = Right$(arr(LBound(arr)), Len(arr(LBound(arr)) - 1)) 
    ' Strip last character from last array element 
    arr(UBound(arr)) = Left$(arr(UBound(arr)), Len(arr(UBound(arr)) - 1)) 


Loop 
+1

我得到了一个错误“变量需要 - 不能分配给这个表达式” – CeciliA

+1

你的代码是什么,什么行给出错误?你意识到我只是使用你的代码 - 当你说“08:01:04 08:16:06 10:52:06 11:52:21”是你的变量的结果时,我必须相信你......也许显示“EndOfB.txt”的内容 – dbmitch

+1

EndOfB.txt没有内容。我只是把字符串。即时通讯使用它作为数据库。 – CeciliA

0

我有同样的问题,我只能谷歌这是你应该问的问题之前,但因为我理解,并有一段时间我自己有这个问题,我会给你一个简单的例子,做什么。

Text1.Text = Mid(Text1.Text, 2) 
Text1.Text = Left$(Text1.Text, Len(Text1.Text) - 1) 

我希望这可以工作对于你来说,只需将text1.text替换为你想编辑的字符串的名字即可。