I will explain my problem with below 2 scripts
Script 1:
use Encode;
use Win32::GuiTest qw(FindWindowLike);
open(MYFILE, '<:encoding(UTF-8)',"saml.txt") || die "cannot open: $!"
+;
open(OUTFILE,'>:encoding(UTF-8)',"out.txt") || die "cannot open: $!";
$line=<MYFILE>; #reading the chinese text from input file
chomp($line);
binmode(STDOUT, ":utf8");
print "$line\n"; #===> Here perl prints out some chinese text to the
+command console, but different from what is given in input file
my @hwnd=Win32::GuiTest::FindWindowLike(undef,$line);
if($hwnd[0])
{
print "window found\n";
}
else
{
print "window not found\n";
}
print OUTFILE $line; #==> Here perl prints out same chinese text as i
+nput to the outfile
Script 2
use Encode;
use Win32::GuiTest qw(FindWindowLike);
$line="***Winow title in chinese**";
binmode(STDOUT, ":utf8");
print "$line\n"; #===> Here perl prints out some chinese text to the
+command console, but different from what is given in input file
my @hwnd=Win32::GuiTest::FindWindowLike(undef,$line);
if($hwnd[0])
{
print "window found\n";
}
else
{
print "window not found\n";
}
Script 1 gives me the output as "window not found" (though window is present)as the window title is read from the input text file.
Script 2 gives me the proper output as window found, as the window title is hardcoded in the string.
What am i doing wrong in script 1 while reading from unicode file.