java - 修改文本文件中的数据

标签 java android file-io text-files edit

已创建一个文件,用于存储数据以“,”分隔并以“;”结尾的记录。

到目前为止,我已经能够附加到文件,但现在我需要更新记录中的特定元素。每条记录都以唯一标识符开头。

下面是如何打开文件以及将每个唯一 ID 读入数组的示例:

DataInputStream fin = new DataInputStream(openFileInput("Updates.txt"));
try {
    for (;;) {
    String record = fin.readUTF();
    Log.d(DEBUG_TAG, "Record "+record);
    elements = record.split(",");
    String trackingNo = elements[0];
    UpdateRecord item = new UpdateRecord(trackingNo);
    }
}
catch (EOFException e) {
    Log.i("Data Input Sample", "End of file reached");
}
fin.close();

最佳答案

Sub example1()
Dim strFinal As String
Dim strline As String

Open "D:\textfile.txt" For Input As #1
    While EOF(1) = False
        Line Input #1, strline
        If Len(strline) > 24 Then
            strFinal = strFinal + ModifyColumn(strline)
            Else
            strFinal = strFinal + strline + vbCrLf
        End If
    Wend
    strFinal = strFinal
Close #1

Open "D:\textfile.txt" For Output As #1
    Print #1, strFinal
Close #1
End Sub


Function ModifyColumn(ByVal strInput As String) As String
    Dim arrString() As String
    Dim strOutput As String
    'split the columns
    arrString = Split(strInput, vbTab)
    'concatenate the first 2 column as they are
    strOutput = arrString(0) + vbTab + arrString(1) + vbTab + arrString(2)
    'add 100$ to column3
    requirevalue = Left(arrString(3), InStr(1, arrString(3), "|") - 1)
    last3Digit = Right(requirevalue, 3)
    If Left(requirevalue, 3) = "max" Then
        Newvalue = vbTab + "OTPxxxxxx" & last3Digit & "|" & Right(arrString(3), Len(arrString(3)) - InStr(1, arrString(3), "|")) + vbCrLf
    Else
        Newvalue = vbTab + arrString(3) + vbCrLf
    End If
    strOutput = strOutput & Newvalue
    'strOutput = strOutput + Strings.Trim(Str(CDbl(Left(arrString(3), Len(arrString(2)) - 1)) + 100)) + "$" + vbCrLf
    ModifyColumn = strOutput
End Function`enter code here`

关于java - 修改文本文件中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10855039/

相关文章:

Java Hibernate 异常 MySQLSyntaxErrorException : You have an error in your SQL syntax

C++文件操作: Reading specific line in a file.

java - 如何在 BIRT API 中设置 Excel 工作表名称?

java - Android 无法解码 PHP base64 代码

java - Spring中xml配置优先于注解配置的例子

android - 我无法在 Android 中取消 Alarms/PendingIntents

Android 扩展文件不会触发 onDownloadStateChanged?

android - AChart 引擎条形图显示不正确

c# - 读取/写入共享资源的优化/最佳方式

python - 需要从一个txt文件读入字典