Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]5190[/thread]

Umlaute mit Tk und ODBC

Leser: 1


<< >> 8 Einträge, 1 Seite
Gast Gast
 2006-05-27 16:22
#45480 #45480
Hallo zusammen,

Tk804.xxx arbeitet per default mit utf-8, DBD-ODBC und DBD-mysql aber wohl noch mit Ansi. Beim Speichern von Daten in die Datenbank kommt es daher zu Problemen mit den Umlauten. Nun hab' ich gesehen, dass es ein Modul Encode gibt, mit dem man Zeichenketten von einem Zeichensatz in den anderen wandeln kann. Allerdings gibt es das Modul nur in einer tar.gz-Variante - gibt es etwas vergleichbares auch füt ActivePerl? Oder hat vielleicht jemand eine andere Idee, wie ich dem Problem Herr werden kann (derzeit arbeite ich mit einer Uraltversion von ActivePerl, in der noch Tk800.025 gebundelt war) ?

Danke Helmut
GwenDragon
 2006-05-27 16:53
#45481 #45481
User since
2005-01-17
14533 Artikel
Admin1
[Homepage]
user image
Um welche Perl-Version handelt es sich denn?
Perl 5.6 macht Probleme mit UTF.

CPAN:Unicode-String könnte dir vielleicht helfen.\n\n

<!--EDIT|GwenDragon|1148734813-->
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

renee
 2006-05-27 16:56
#45482 #45482
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Also Encode ist seit perl 5.7.3 ein CORE-Modul...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
GwenDragon
 2006-05-27 17:02
#45483 #45483
User since
2005-01-17
14533 Artikel
Admin1
[Homepage]
user image
Es gibt so einige Module für Perl 5.6, die Unicode transformieren:
Quote
ppm>s Unicode
Searching in Active Repositories
  1. Unicode-Collate       [0.52] Unicode Collation Algorithm
  2. Unicode-Collate       [0.52] Unicode-Collate
  3. Unicode-Collate       [0.26] Unicode Collation Algorithm
  4. Unicode-EastAsianWi~  [1.02] Unicode-EastAsianWidth
  5. Unicode-EastAsianWi~  [1.02] East Asian Width properties
  6. Unicode-IMAPUtf7      [1.04] Unicode-IMAPUtf7
  7. Unicode-IMAPUtf7      [1.04] Perl extension to deal with IMAP UTF7
  8. Unicode-Indic         [0.01] Unicode-Indic
  9. Unicode-Indic         [0.01] Perl program to transliterate Indic languag~
 10. Unicode-Lite          [0.12] Unicode-Lite
 11. Unicode-Lite          [0.12] Easy conversion between encodings
 12. Unicode-Lite          [0.12] Easy conversion between encodings
 13. Unicode-Map          [0.112] maps charsets from and to utf16 unicode
 14. Unicode-Map          [0.112] Maps charsets from and to utf16 unicode
 15. Unicode-Map          [0.112] Unicode-Map
 16. Unicode-Map8          [0.11] Mapping table between 8-bit chars and Unico~
 17. Unicode-String        [2.09] String of Unicode characters (UTF-16BE)
 18. Unicode-String        [2.06] String of Unicode characters (UCS2/UTF16)
 19. Unicode-Transform     [0.31] Unicode-Transform
 20. Unicode-Transform     [0.31] conversion among Unicode Transformation For~
 21. Unicode-UTF8simple    [1.06] Conversions to/from UTF8 from/to characters~
 22. Unicode-UTF8simple    [1.06] Unicode-UTF8simple
ppm>
\n\n

<!--EDIT|GwenDragon|1148735041-->
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

ptk
 2006-05-27 23:06
#45484 #45484
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Da Tk804 nur mit perl5.8.x läuft, erübrigen sich alle Hinweise auf die Unicode::*-Module. Wer mit Unicode ernsthaft arbeiten möchte, braucht ein aktuelles Perl und dort ist Encode.pm schon dabei.
thunderace
 2006-07-25 22:02
#45485 #45485
User since
2006-07-25
4 Artikel
BenutzerIn
[default_avatar]
Dasselbe Problem habe ich auch. Wie verwende ich dieses Encode.pm Modul??

Code: (dl )
use Encode;


Und wie dann weiter ?
Hätte jemand ein Beispiel ??
Ich kann mir gerade nicht so richtig vorstellen wie das funktionieren soll.
Strat
 2006-07-26 14:00
#45486 #45486
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
Encode hast du dir schon durchgelesen?

wenn ich daten nur durchreiche, verwende ich gerne from_to, z.B.
Code: (dl )
1
2
3
use Encode;

Encode::from_to($string, 'iso-8859-1', 'utf8');

das konvertiert den Inhalt von $string von ansi nach utf8.
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
ptk
 2006-08-05 12:10
#45487 #45487
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Du möchtest aber encode und decode verwenden. Damit konvertiert man von der internen Repäsentation (die z.B. von Tk und Perl verwendet wird) in eine externe Repäsentation (ANSI = iso-8859-1 oder windows-sonstwas).
<< >> 8 Einträge, 1 Seite



View all threads created 2006-05-27 16:22.