How to overwrite previous byte in file?

161 Views Asked by At

I have RandomAccessFile with next structure:

1 X event_1
2 M event_2
3 M event_3
4 E event_4
5 E event_5
6 X event_6
7 M event_7
8 M event_8
9 E event_9
10 M event_10

Reading it byte by byte:

val eventsSource = RandomAccessFile(path, "rw")
    val fileLength = eventsSource.length()
    eventsSource.seek(0)
    var readedBytes = 0
    while (readedBytes <= fileLength) {
        val bytes = eventsSource.read()
        readedBytes++
        // End of line
        if (bytes.toString() == "\uFEFF") {
            println()
        } else {
            val parsedByte = bytes.toChar().toString()
            print(
                parsedByte
                    .replace("ï", "")
                    .replace("»", "")
                    .replace("¿", "")
            )
        }
    }

What if I want to change each X to L in this file? How can I rewrite previous byte?

if (butes.toChar() == 'X') {
   eventsSource.write(...) // ?
}
0

There are 0 best solutions below