-
Data: 2014-12-11 10:10:06
Temat: Dodawanie BOM do pliku w kodowaniu UTF-7 - jak to zrobić?
Od: s...@o...pl szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Witam
Piszę edytor tekstu i chcę by obsługiwał wszystkie wersje BOM (Byte Order Mark) ze
specyfikacji Unicode. Jednak nie mogę nigdzie znaleść specyfikacji dotyczącej BOM dla
UTF-7. Na unicode.org UTF-7 jest jedynie wzmiankowany w 2 dokumentach pdf i podane są
4 możliwe kombinacje tego BOM. Na wikipedia.org jest nieco więcej i pisze tam, że
przed kodowaniem w base64 do ostatniego bajtu w postaci 001111xx na ostatnich 2
bitach dodaje się pierwsze 2 bity z pierwszego znaku. Problem w tym, że gdy doda się
te 2 bity to nie uzyska się jednej z tych wymienionych 4 wartości czwartego bajtu. A
jeśli się go zakoduje w base64 to wychodzą z tego 2 bajty a nie jeden (jeśli użyję
dla kodowania base64 flagi QByteArray::OmitTrailingEquals co znaczy: Omits adding the
padding equal signs at the end of the encoded data.).
Dla przykładu:
mam plik z taką jedną lnią:
dfassdfas
To po dodaniu 3bajtów stałych i czwartego zakodowanego w base64 bajtu 001111xx gdzie
xx to 2 bity z pierwszego znaku w tekście. Uzyskuję poniższy tekst:
+/vPQdfassdfas
czyli szesnastkowo:
2B 2F 76 50 51 64 66 61 73 73 64 66 61 73
Jak widać zamiast 4 bajtu o dopuszczalnych wartościach 38 39 2B i 2F są 2 bajty 50
51.
Moje pytanie brzmi: Gdzie popełniam błąd?
z góry dzięki za pomoc
Szyk Cech
Następne wpisy z tego wątku
- 11.12.14 21:56 s...@o...pl
- 16.12.14 11:28 firr
Najnowsze wątki z tej grupy
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-11-25 Dwie umowy dożywocia
- 2025-11-24 Domowy switch 1GBit/8 portów, ale lepszy niż najtańsze
- 2025-11-24 Kraków => Production Coordinator / Representant Product Dev <=
- 2025-11-24 Warszawa => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-11-24 Białystok => Solution Architect (Workday) - Legal Systems <=
- 2025-11-24 Białystok => Konsultant ERP Microsoft Dynamics 365 Commerce <=
- 2025-11-24 Rzeszów => ERP Microsoft Dynamics 365 Commerce Consultant <=
- 2025-11-24 Białystok => Programista React ze znajomością C++ <=
- 2025-11-24 Gdańsk => Dynamics 365 Commerce/POS Developer <=
- 2025-11-24 Białystok => Microsoft Dynamics 365 Finance Consultant <=
- 2025-11-24 Białystok => Senior Microsoft Dynamics 365 Business Central Konsultan
- 2025-11-24 I kolejne mleko się rozlało
- 2025-11-24 kolorowy e-paper
- 2025-11-24 Białystok => Konsultant Microsoft Dynamics 365 Finance <=
- 2025-11-24 Białystok => Programista Delphi <=




Ile kosztują tanie mieszkania w polskich metropoliach?