I've substituted my own string for yours and here's what I see now in the browser:
$VAR1 = "/search/\x{bf}Cuales son las partes de una cadena de conexi\x{f3}n??scope=SSGU8G_12.1.0|/com.ibm.jdbc_pg.doc/ids_jdbc_011.htm|0|1|1|0\n";
UTF-8 flag is on
/search/¿Cuales son las partes de una cadena de conexión??scope=SSGU8G_12.1.0|/com.ibm.jdbc_pg.doc/ids_jdbc_011.htm|0|1|1|0
After Text::CSV: /search/¿Cuales son las partes de una cadena de conexión??scope=SSGU8G_12.1.0 | /com.ibm.jdbc_pg.doc/ids_jdbc_011.htm
\x{bf} or U+00BF is the inverted question mark and U+00F3 is “ó”, so AFAICT that looks correct, doesn't it?
BTW I'm assigning $data by reading a stdout output file that is returned from the db via the tool I'm using for the SQL query.
Ok, so do I understand correctly that you've tested the code you showed within the script I posted?
(BTW, why not use DBI to connect directly to the database instead of going through a file?)
I've also tried opening the file without the :encoding and get the same result.
Well, if you've got the use open qw/:std :utf8/; that I suggested at the top of the script, that also sets utf8 as the default encoding layer. As long as you're not getting warnings such as "Malformed UTF-8 character: \xbf" or "utf8 "\xBF" does not map to Unicode" (check the web server's error logs and/or run the script from the command line), then it would seem your file is probably encoded as UTF-8, and it would seem that everything is correct...
So are you still seeing the same problem as before, or is it working now?
In reply to Re^9: Text::CSV encoding parse()
by haukex
in thread Text::CSV encoding parse()
by slugger415
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |