From: Wu Nan Date: 2008-09-16T18:30:56+09:00 Subject: Re: [BUG REPORT] for WIN32OLE: The returning of Reading the Asian Langugae Text in Excel is always '?????? ' ------=_Part_16206_31361770.1221557738899 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Hello Heesob, Thank you very much! You are right, I have just test it. Sorry for my mistake. BR Nan 2008/9/16 Heesob Park > Hi, > > 2008/9/16 Wu Nan > >: > > Hi All, > > > > I think I just found a bug in Win32OLE, > > > > When I read a cell which has Korean or Chinese Character Text from > Excel2003 > > with Win32Ole, whatever the text is, the value of the cell is always > '????' > > > > My environment is WinXP Sp3, Office2003, Ruby is 1.8.6 (I also test the > > 1.9.0, it still returns ??????) > > > > I use the parseexcel, and it can read the cell content correctly. > > > > I attched the test codes and test file. > > In the excel file, there are 2 cells, first cell is Koean Text, 2nd cell > is > > Chinese Text. > > > > test.rb is used Win32Ole. > > test2.rb is used parseexcel, if you want use this, please:Gem Install > > parseexcel > > test.xls is the excel file > > > > Thanks for alex's help. > > > > BR > > Nan > > > That is not a bug. > > You must use WIN32OLE.codepage in case of the mixed character set handling: > Here is a working code for my Korean WinXP SP3 based on your test.rb: > > require 'win32ole' > require 'iconv' > > def read_excel(e_name, s_name) > $excel.WorkBooks.Open("#{$MY_LOCATION}/" + e_name,TRUE) > > $excel.WorkSheets(s_name).Activate > begin > puts $excel.Cells(1,1).value > puts $excel.Cells(1,2).value > > $excel.Cells(1,1).text.to_s.each_byte{|c| print c, ' '} > puts > Iconv.conv("EUC-KR//IGNORE","UTF-8//IGNORE",$excel.Cells(1,1).value) > > ensure > $excel.WorkBooks.Close() > end > end > > $MY_LOCATION = Dir.getwd > WIN32OLE.codepage = WIN32OLE::CP_UTF8 > $excel = WIN32OLE.new("excel.application") > $excel.Visible = false > begin > read_excel('test.xls',"Sheet1") > ensure > $excel.Quit() > end > > > Regards, > > Park Heesob > > ------=_Part_16206_31361770.1221557738899--