Groups | Search | Server Info | Login | Register


Groups > pl.comp.lang.asm > #41

Re: Konwerter txt do UTF 8

From "Bogdan (bogdro)" <bogdan@poczta.gazeta.pl>
Newsgroups pl.comp.lang.asm
Subject Re: Konwerter txt do UTF 8
Date 2022-03-27 13:17 +0200
Organization Aioe.org NNTP Server
Message-ID <t1ph5b$qu7$1@gioia.aioe.org> (permalink)
References (6 earlier) <623c6b4b$0$465$65785112@news.neostrada.pl> <t1i94p$1ijs$1@gioia.aioe.org> <623e3867$0$480$65785112@news.neostrada.pl> <t1ndg2$tgp$1@gioia.aioe.org> <623f41a8$0$479$65785112@news.neostrada.pl>

Show all headers | View raw


W dniu 26.03.2022 o 17:38, Kamil pisze:
> Użytkownik "Bogdan (bogdro)"  napisał:
> 
>> Tak, opisałeś zrozumiale. Tzn. wiem, o jaki problem chodzi. Tyle, 
>> ile rozumiem, to to, że masz bufor z danymi z pliku, zmieniasz znak 
>> na encję HTML, ale to powoduje "przesunięcie" się pozostałych znaków 
>> z pliku, więc musisz szukać pod innymi numerami. Tak by to było, 
>> gdyby używać jednego i tego samego bufora na wejście i wyjście i 
>> gdyby przerabiać jedną literę na raz.
> 
>>  Ja zaś proponuję 2 OSOBNE bufory. ...
> 
> Mam dwa bufory, jeden wejściowy i drugi wyjściowy. I chodzi o to, że 
> jeśli przeszukam bufor wejściowy jednym znakiem i zapiszę do bufora 
> wyjściowego to muszę dla procedury przeszukiwania wejścia kolejnym 
> znakiem i jego zapisywania do wyjścia ustawić odpowiednio adresy. A 
> skąd ma program "wiedzieć na jakiej pozycji znajduje się ten aktualnie 
> znaleziony i zapisywany znak? Chyba, że czegoś nie rozumiem. 
> Pogłówkuję jeszcze i może mi się rozjaśni. Póki co jedynym wyjściem 
> wydaje mi się wbudowanie w program kolejnej procedury ReadFile i 
> kolejnego zestawu buforów.
> 
> Pzdr


  I to jest właśnie to, co poruszyłem w mojej "drugiej istotnej idei": 
przeszukujesz bufor wejściowy znak po znaku, ale po JEGO znaku, a NIE 
po znaku, który przerabiasz (tj. "ą", "ć", ...).
  Jeśli przerabiasz najpierw wszystkie "ą", potem wszystkie "ć", potem 
"ę" itd., to faktycznie tworzy to problemy, o których obaj mówimy - 
jak "wiedzieć", gdzie teraz zapisać wynik.

  Ja zaś proponuję coś, co można by zapisać pseudokodem:

odczytać plik wejściowy do bufora input

i = 0;  // indeks do bufora wejściowego
o = 0;  // indeks do bufora wyjściowego

while i < długość input
	if input[i] = 'ą'
		output[o] = "&#XXX;";
		o = o + 6;
	else if input[i] = 'ć'
		output[o] = "&#XXX;";
		o = o + 6;
	...
	else if input[i] = 'Ż'
		output[o] = "&#XXX;";
		o = o + 6;
	else
		output[o] = input[i];
		o = o + 1;

	i = i + 1;
end while

zapisać bufor output do pliku wyjściowego

Dzięki takiemu podejściu nie musisz za każdą nową literą zaczynać znów 
zapisywać do output i uważać, pod jaki adres zapisujesz (tj. pamiętać, 
ile zmienionych liter było już do tej pory).

-- 
Pozdrawiam/Regards - Bogdan                     (GNU/Linux & FreeDOS)
Kurs asemblera x86 (DOS, GNU/Linux):            http://bogdro.evai.pl
Grupy dyskusyjne o asm:  pl.comp.lang.asm alt.pl.asm alt.pl.asm.win32
www.Xiph.org www.TorProject.org  Soft(EN): http://bogdro.evai.pl/soft

Back to pl.comp.lang.asm | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Konwerter txt do UTF 8 "Kamil" <nospam@tlen.pl> - 2022-03-21 15:28 +0100
  Re: Konwerter txt do UTF 8 "Bogdan (bogdro)" <bogdan@poczta.gazeta.pl> - 2022-03-22 13:18 +0100
    Re: Konwerter txt do UTF 8 "Kamil" <nospam@tlen.pl> - 2022-03-22 15:27 +0100
      Re: Konwerter txt do UTF 8 "Bogdan (bogdro)" <bogdan@poczta.gazeta.pl> - 2022-03-22 21:37 +0100
        Re: Konwerter txt do UTF 8 "Kamil" <nospam@tlen.pl> - 2022-03-22 22:42 +0100
          Re: Konwerter txt do UTF 8 "Kamil" <nospam@tlen.pl> - 2022-03-23 12:45 +0100
            Re: Konwerter txt do UTF 8 "Kamil" <nospam@tlen.pl> - 2022-03-24 13:59 +0100
              Re: Konwerter txt do UTF 8 "Bogdan (bogdro)" <bogdan@poczta.gazeta.pl> - 2022-03-24 18:18 +0100
                Re: Konwerter txt do UTF 8 "Kamil" <nospam@tlen.pl> - 2022-03-25 22:47 +0100
                Re: Konwerter txt do UTF 8 "Kamil" <nospam@tlen.pl> - 2022-03-25 23:03 +0100
                Re: Konwerter txt do UTF 8 "Bogdan (bogdro)" <bogdan@poczta.gazeta.pl> - 2022-03-26 17:03 +0100
                Re: Konwerter txt do UTF 8 "Kamil" <nospam@tlen.pl> - 2022-03-26 17:38 +0100
                Re: Konwerter txt do UTF 8 "Bogdan (bogdro)" <bogdan@poczta.gazeta.pl> - 2022-03-27 13:17 +0200
                Re: Konwerter txt do UTF 8 "Kamil" <nospam@tlen.pl> - 2022-03-28 09:36 +0200
                Re: Konwerter txt do UTF 8 "Bogdan (bogdro)" <bogdan@poczta.gazeta.pl> - 2022-03-28 18:59 +0200
                Re: Konwerter txt do UTF 8 "Kamil" <nospam@tlen.pl> - 2022-03-29 17:50 +0200
            Re: Konwerter txt do UTF 8 "Radoslaw Szwed" <radekszwed@pochta.fm> - 2022-03-25 06:29 +0100
              Re: Konwerter txt do UTF 8 "Kamil" <nospam@tlen.pl> - 2022-03-25 22:37 +0100

csiph-web