Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 48991|Odpowiedź: 3

[Źródło] .NET/C# do ustalenia, czy tag BOM jest uwzględniony

[Skopiuj link]
Opublikowano 16.07.2021 13:22:54 | | | |
Czym jest BOM?

Znak kolejności bajtów (BOM), czyli znak kolejności bajtów, to specjalny znak wstawiany do pliku Unicode zakodowanego w UTF-8, UTF16 lub UTF-32, aby zidentyfikować typ kodowania pliku Unicode. Dla UTF-8 nie jest wymagana baza BOM, ponieważ służy do oznaczania typu kodowania i kolejności bajtów (big-endian lub little-endian) wielobajtowego pliku zakodowanego. W UTF-8 liczba bitów zakodowanych dla każdego znaku wyrażana jest przez pierwszy bajt i nie ma rozróżnienia między big-endianem a little-endianem.
UTF-8 nie wymaga BOM, chociaż standard Unicode pozwala na użycie BOM-ów w UTF-8. Dlatego UTF-8 bez BOM jest standardową formą, a w Microsoftzie jest to głównie zwyczaj umieszczania BOM w pliku UTF-8 (przy okazji: Microsoft ma też zwyczaj wywoływać UTF-16 z BOM "Unicode" bez wchodzenia w szczegóły).
Kopie BOM są przygotowywane dla UTF-16 i UTF-32 do oznaczania kolejności bajtów. Microsoft używa BOM w UTF-8, ponieważ pozwala to wyraźnie rozróżnić kodowanie UTF-8 i ASCII, w przeciwnym razie otwarcie pliku CSV w Excelu może zostać zniekształcone. Jednak taki plik może powodować problemy w innych systemach operacyjnych niż Windows.
Różnica między "UTF-8" a "UTF-8 z BOM" polega na tym, czy istnieje BOM, czy nie. To znaczy, czy na początku pliku znajduje się U+EFF.
Kod UTF-8 nie powinien używać BOM-ów, w przeciwnym razie błędy są powszechne. Podczas wyprowadzania pliku CSV z odpowiedzi http, nie jest on domyślnie uwzględniany przy ustawieniu na utf8
BOM, ale Windows Excel używa BOM do potwierdzenia kodowania UTF8 i wszystkie muszą zapisywać BOM na początku pliku.



Gdy po raz pierwszy tworzysz generator kodu Java, umieszczasz plik bezpośrednioZapisz do pliku UTF-8, który zawiera tag BOMTo prowadzi do błędów opakowaniowych, jak następuje:

Postacie nielegalne: '\ufeff'


Jak użyć .NET / C#, aby określić, czy plik zawiera tagi BOM? , kod jest następujący:





Współpracownicy, dołączeniKonwertuje format BOM UTF-8 na format UTF-8 (bez tagów BOM), pełny kod wygląda następująco:

(Koniec)

Wynik

Liczba uczestników1MB+1 przyczynić się+1 Zapaść powód
Mo Feng 123 + 1 + 1 Bardzo potężne!

Zobacz wszystkie oceny





Poprzedni:SQL SERVER usuwa funkcję partycji delete oraz schemat partycji
Następny:Powierzchnia każdej tabeli w bazie SQL Server
Opublikowano 16.07.2021 22:41:40 |
 Ziemianin| Opublikowano 01.11.2024 15:00:47 |
UTF-8 usuwa tag BOM

 Ziemianin| Opublikowano 25.06.2025 16:13:03 |
utf-8 nie zapisuje się do BOM
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com