Forum Gry Hobby Sprzęt Rozmawiamy Archiwum Regulamin

Forum: konwerter kodowania plików tekstowych

28.08.2012 11:44
yasiu
1
yasiu
199
Legend

konwerter kodowania plików tekstowych

Szukam konwertera kodowania plików tekstowych. Korzystam z gżegżółki - tu kodowanie z UCS2-Little Endian do UTF-8 idzie bez problemu, ale w drugą stronę pliki są konwertowane do USC2 bez BOM - a ja potrzebuję BOM. Szukam więc innego programu, ale coś słabo mi idzie :/ Pomocy :)

28.08.2012 12:20
TrzyKawki
😊
2
odpowiedz
TrzyKawki
188
smok trojański

Jestem prawie pewien, że nie, ale muszę z obowiązku dopytać - nie chodzi o BOM: Baterię Oponujących Modułów, mniejszość bateryjną, stanowiącą obok: BAM: Baterii Aprobujących Modułów, BIM: Baterii Inwigilujących Modułów oraz MUZG: Modułu UZGadniającego, część Dziejobitni?

(patrz: "Wizja Lokalna" - Stanisław Lem)

28.08.2012 12:26
maviozo
3
odpowiedz
maviozo
238
autor zdjęć

Notepad++ może dodać (i usunąć) BOM.

28.08.2012 12:33
yasiu
4
odpowiedz
yasiu
199
Legend

TrzyKawki - jestem prawie pewien, że nie, ale nigdy się nie dowiemy, jak jest naprawdę :)

maviozo - powodzenia, kilka razy w tygodniu konwertować kilkadziesiąt plików jeden po drugim ;)

28.08.2012 13:49
legrooch
5
odpowiedz
legrooch
240
MPO Squad Member

yasiu ==> Banalny i szybki skrypcik w czymkolwiek, który przeleci i zenumeruje zawartość katalogu? :)

28.08.2012 14:11
yasiu
6
odpowiedz
yasiu
199
Legend

legrooch - que? :D

własnie ściągam winGNU czy inne guano gdzie jest iconv - to powinno rozwiązać sprawę, potem tylko for %%a in (*.txt) do iconv.exe srutututu %%a i będzie git :)

edit - iconv też konwertuje bez BOM :/

28.08.2012 14:44
7
odpowiedz
Likfidator
120
Senator

Najlepszy byłby prosty program w dowolnym języku, który potrafi przetwarzać pliki. W pseudokodzie byłoby to coś takiego:

char Podmien(char a)‹
//patrzymy na tablicę zamiany znaków, którą wczytaliśmy np. z pliku
return tab[a];

void main(char[] nazwapliku)‹
//
file a,b;
a.open(nazwapliku);
b.create();
while(a != eof())‹
b.write(Podmien(a.read());

a.close();
b:close();

28.08.2012 15:08
legrooch
8
odpowiedz
legrooch
240
MPO Squad Member

Opisz co i jak konwertujesz dokładniej.

Masz coś w UCS2, wrzucasz to do UTF-8, a później chcesz zrobić z tego UCS2+BOM?
Po co zamiana na UTF-8?

28.08.2012 15:16
yasiu
9
odpowiedz
yasiu
199
Legend

Dostaję paczkę z plikami które są w UCS2 LE - z BOM. Muszę przekonwertować je do UTF-8 dla zgodności z softem (i po to, żeby moje skrypty sobie z nimi poradziły, z UCS2 LE przestałem walczyć po dwóch nieprzespanych nockach) - pliki muszę oddać w USC2 LE z BOM. O ile gżegżółka radzi sobie z pierwszą konwersją, do UTF-8, to w drugą stronę tak dobrze już nie jest, robi pliki bez BOM, tak samo jak iconv.

28.08.2012 15:28
legrooch
10
odpowiedz
legrooch
240
MPO Squad Member

Możesz mi podesłać na legrooch małpa o2 kropka pl taki przykładowy plik?

Edit:
Dupa. A ta końcówka z UTF-16 sobie nie radzi?

28.08.2012 15:44
yasiu
11
odpowiedz
yasiu
199
Legend

legrooch - no właśnie nie mogę... znaczy mógłbym jak znajdę chwilę przygotować coś przykładowego

28.08.2012 16:05
legrooch
12
odpowiedz
legrooch
240
MPO Squad Member

yasiu ==>

1)
Dim x As String = HexToString("FFFE")
strData = HexToString("FFFE") & strData 'BOM ?

2)
Function HexToString(ByVal hex As String) As String
Dim text As New System.Text.StringBuilder(hex.Length \ 2)

For i As Integer = 0 To hex.Length - 2 Step 2
text.Append(Chr(Convert.ToByte(hex.Substring(i, 2), 16)))
Next

Return text.ToString
End Function

28.08.2012 16:36
legrooch
13
odpowiedz
legrooch
240
MPO Squad Member

Jakie masz rozszerzenia tych plików?

Edit:
Dobra, dawaj na maila ten plik, kod mam dla Ciebie w całości gotowy. Jak ruszy mi ten plik, to dam Ci program konwertujący w jedną i w drugą :)

Forum: konwerter kodowania plików tekstowych