Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re^3: how to output file in Unicode

by philiprbrenan (Monk)
on Aug 24, 2012 at 14:57 UTC ( #989563=note: print w/ replies, xml ) Need Help??


in reply to Re^2: how to output file in Unicode
in thread how to output file in Unicode

sub writeUnicode($$) {my ($f, $s) = @_;

Assigns parameter 1 to the subroutine from @_ to $f and parameter 2 to $s. One could also write my $f = $_[0]; my $s = $_1;

if ($f =~ /\A(.+[\\\/])/) {my $d = $1; makePath($d); }

Extracts the path component of the file name and places it in variable $d so that we can make a directory for the output file. If you know that the output directory exists, then there is no need for this code. The assignment to $d is somewhat verbose, one could use makePath($1) to use the first expression captured by the regular expression in the if statement directly. The regular expression captures the text up to the last \ or / in the file name and uses that as the path component.

say {$F} $s;

Writes the contents of $s to the file whose handle is in $F. The file is automatically closed at the end of the block containing my $F. This statement is an alternative to $F->say($s);


Comment on Re^3: how to output file in Unicode
Select or Download Code
Re^4: how to output file in Unicode
by anakin30 (Acolyte) on Aug 27, 2012 at 11:10 UTC

    I have written this script below,

    the output file generated but i still seeing, German "Umlaut" in the csv output file. Example : Björn

    why the csv output file is not encoded into encoding(UTF-8)??, am i missed any steps here!!!!

    #!/usr/bin/perl use Net::LDAP; use Encode; $outputfile = 'C:\Meta\MDS\data\out\LicMan1.csv'; $outputfile2 = 'C:\Meta\MDS\data\out\LicMan.csv'; open (INPUT, "<:encoding(UTF-8)", $outputfile) or die "Cannot open fil +ename for input: $!"; while (<INPUT>) { s/"//g; $replace .= $_;} close INPUT or die "Cannot close filename: $!"; open (OUTPUT, ">:encoding(UTF-8)",$outputfile2) or die "Cannot open fi +lename for output: $!"; print OUTPUT $replace; close OUTPUT or die "Cannot close filename: $!";

      Try:

      my $s = "\x{fc}"; say $s; say $s =~ s/\x{fc}/u/gr;

      You can see common unicode points at: http://www.pjb.com.au/comp/diacritics.html amongst many other places on the web.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://989563]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (6)
As of 2015-07-04 11:17 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (59 votes), past polls