Mój dziwny problem z "K"

0

Załózmy, że mam taką linię (wzięta żywcem z zapisanego pliku):
Pytanie 101Kto napisał ten program?3Kuba Wojewódzki-1~Kubuś Puchatek0Marcin Sas-Szymański0~Bill Gates0~
(co ważne, nigdzie tam nie ma znaku łamania linii!)
Jeśli zapisuję sobie taką linię do pliku, odczytuje ją potem normalnie i wszystko jest ok.
ALE: nie mogę sobie pozwolić na takie "zwykłe" zapisanie linii, Dlatego tez koduję ją, wykonując na każdym kolejnym znaku operację

wynik:=wynik+linia[znak] xor 65

Gdy potem odczytuję tę linię i odkodowuję ją identyczną procedurą, to niby wszystko jest ok, ale tylko wtedy, gdy nie ma nigdzie znaku "K". Gdy tylko znak ten się pojawi, w rozkodowanym pliku zamiast "K" napotykam znak łamania linii! Dlaczego?!

0

Ord('K')=75, 75 xor 65 = 10 (znak łamania linii)

Po prostu: program koduje jedną linię i zapisuje już DWIE (ze znakiem łamania w miejscu K)

Potem przy odczytywaniu program (zapewne przez ReadLn) odczytuje tylko pierwszą linię DO znaku łamania i odkodowuje tylko pierwszą część tego co zostało zakodowane - widocznie nie odkodowujesz znaków łamania.

0

Jezuuu! Ale ja jednak tępy jestem... WIELKIE DZIĘKI! a tyle szukałem, co jest nie tak... Nie skasuje tematu, może się przyda :P

1 użytkowników online, w tym zalogowanych: 0, gości: 1