Jump to content
php.lv forumi

NUL Character


Roboc

Recommended Posts

Problēma sekojosha:

Ir .DAT fails, kurā glābājas info - programma kura pirms tam izmantoja sho failu ir taisiita kaut kaadaa aizvēsturiskā valodā, un nav vairs speejiiga darboties, tapēc radās nepieciešamība visu info pārmestu uz MySQL datubāzi. Fails ir nolasāms ar jebkuru teksta editoru, un papētot tuvāk atklājās, kad laukiem ir noteikti garumi, pēc kuriem tad arī ieraksti tiek atdalīti, vieniigo probleemu sagaadaaja <NUL> simbols..

 

Luuk arii jautaajums:

Vai pastāv iespēja pārvērst <NUL> simbolu par da jebko citu izmantojot Notepad2, Notepad++ vai ko tamlīdzīgu.. komanda "Zap all no printable character to #" iisti neder, jo tā pārvērš arī citus ne ASCII simbolus par #..

Pie reizes arī jautājums par UTF-8 - kā izskaidrojams tas, kad pārejot no ASCII uz UTF-8 mainās simbolu skaits failaa? Ieveeroju to, kad visu miiksto burtu garums 1 simbola vietaa ir 3 simboli.. Kaa tas ir izskaidrojams un vai tas ir noveershams?!

paldies jau ieprieksh! :)

Link to comment
Share on other sites

1) ar notepad nezināšu kā to pārvērst, bet ar php (vai jebkuru citu programmēšanas valodu) ir vienkārši:

<?php file_put_contents("fails_out.txt", str_replace("\ 0", "?", file_get_contents("fails_in.txt"))); ?>

Starp \ un 0 izdzēst atstarpi (forums neļauj tos kopā iepostēt).

2) UTF-8 ir mutli-byte kodējums. Tas simbolu attēlo sākot ar 1 baitu, beidzot pat ar 4 baitiem. Skat šeit: http://en.wikipedia.org/wiki/UTF-8

Link to comment
Share on other sites

Roboc -->

Ljoti iespejams ka kaada no DB shoi briinumu mieriigi sagremo....

pamegjini sho failu iebarot aksesam vai pat vienkarshi excelim....

var protams paekspermet arii ar kaadu no vecajam DB ... foxpro etc....

tas ka visi lauki ir fikseta garuma norada ka dati ir sakartoti peec DB principiem....

(varbuut ka kljudos, bet tas dazreiz var izradiities vienkarshaaks risinajums.....)

---

a talak jau paveras eksporteshanas iespejas.....

edit: sads piegajiens varetu atrisinat pareju uz UTF-8 jo teiksim (a) ir tikai 1 baits bet mikstie garie no 2-3 baitiem (skjiet ka LV neizmanoja pilnus 4 baitus...)

-----

Edited by Grey_Wolf
Link to comment
Share on other sites

Paldies, Bubu, ideaali nodereeja!! :) Nedaudz paartaisiiju jo izmantoju vienu no 4tajaam PHP versijaa, bet galvenais bija ideja, kas patieshaam nostraadaaja!! :)

 

No saakuma meegjinaaju iebarot visam, kam vien bij iespeeja iebarot, gan Accessam, gan Exelim, gan FoxPro, pat prieksh SQL biju dabuujis "EMS Data Import tool", bet neviens nebij speejiigs nolasiit sakariigi to failu, jo vinjaa viss bij sarakstiits haotiski - nebija piemeeram katrs ieraksts savaa rindinjaa, vai vienots seperators, kas atdala ierakstu no ieraksta.. Veelaak noskaidroju, kad programma itkaa bij rakstiita FoxPro, lai gan beigaas izdevaas izspiest erroru kur paraadijaas "Turbo Access, bla bla bla..", un kaa man zinaams to izmanto Turbo Pascal..

 

Beigu beigaas izdevaas ar PHP paliidziibu sadaliit visu gabalos un viss beidzaas laimiigi!! :)

 

Paldies jums!!

Link to comment
Share on other sites

, gan FoxPro, pat prieksh ... //skipots///

 

.. Veelaak noskaidroju, kad programma itkaa bij rakstiita FoxPro, lai gan beigaas izdevaas izspiest erroru kur paraadijaas "Turbo Access, bla bla bla..", un kaa man zinaams to izmanto Turbo Pascal..

divaini fokpro DB fails un foxpro nenjem?

skjiet ka driizak ja Ljoti vecam aksseam ...... Un tik tieshaam kaads sakars ar paskalu?

Link to comment
Share on other sites

Tas juuzers, kas lietoja, teica, kad programma esot bijusi laikam FoxPro taisiita (~1992.g.), bet cik man zinaams tad FoxPro izmanto DBF formaatu nevis DAT.. izmeegjinaajos vairaakus variantus, lai vinju atveertu - gan kaa Database, gan kaa Free Table, gan arii vienkaarshi importeejot datus, bet vinjsh neatpaziist to failu - pat pamainot paplashinaajumu uz nepiecieshamo.. Bet, tad novaacot to DAT failu un verot valjaa progu paraadijaas errors (Turbo Access Error 5: File access denied), peec kura saguugloju (http://www.experts-exchange.com/Programming/Languages/Pascal/Q_21302744.html#a13235370), kad tas vareetu buut Turbo Pascal, ar programmeetaaja briivi izveidotu datubaazes formaatu.. arii visi paplashinaajumi sakrita - .DAT, .IDX, .PLD, tapeec arii secinaaju, kad tas vareetu buut Turbo Pascal..

Link to comment
Share on other sites

×
×
  • Create New...