« 包含标签 Matlab 的文章

我这个粗糙的人呐

准备上几大财经网站撸它们的个股概念集,发现直接urlread结果中保存的格式是字符串,所以中文字符都是”?”。结果网上一搜,看别人的办法发现其实以前遇到过还照着改了……(你这是要有多糙

所以还是记在这吧。

其实简单得要命。下面开工修理urlread()函数,让它能够正常搞中文网页(版本2012a)。在Matlab中输入 edit urlread打开函数代码文件。

1.修改第一行的函数定义,本来是三个参数,在最后添加一个。

我修改后是这样:function [output,status] = urlread(urlChar,method,params,codingrule)

然后在下面加个循环

if nargin<4; codingrule=’UTF-8′; end

作用是与修改前的函数调用语法兼容。

2.修改参数数量检验语句,narginchk(1,3)改成narginchk(1,4)。

3.修改文件尾部的数据转换语句:

output = native2unicode(typecast(byteArrayOutputStream.toByteArray’,’uint8′),’UTF-8′);

用codingrule替换’UTF-8’,单引号也一并替换。

然后就行了,调用语句[sourcefile,status]=urlread(‘http://sina.com.cn’,’get’,”,’GBK’);

这样保存的字符串就有中文了。

好好学习努力工作,不然以后没饭吃。