termread.m

来自「用matlab2007实现的一个term客户端」· M 代码 · 共 27 行

M
27
字号
function str=termread();
% 读取端口里面剩下的字符,不管有多少,全都给我读进来。同时忽略到asciiart控制符-----希望水木的代码里面主要用这个来做颜色控制,如果用这个做光标移动....就下一步再说吧
% By 可爱的 modeman, May-11-2008

global bbslink;

str=[];
leng=bbslink.BytesAvailable;

if ~leng
    return;
end



A=fread(bbslink,leng);%读入,貌似这样读会把所有buf里面收到的东西都读进来----不过我一直不知道他是怎么判断停止的....

B=char(A)';%这个地方要转置一下,否则后面的函数不认

B=regexprep(B,'\x1B\[m','\x1B\[0m');%先把*[m变成*[0m,免得麻烦
str=regexprep(B,'\x1B\[\d+(;\d+)*m','');% 目前简化处理,所有的ascciart全部忽略

% str=B;
% str=regexprep(B,'(\xD\xA)|(\xA\xD)|(\xA)|(\xD)','\n');%%%%%%%%%%%%%临时


% str=native2unicode(uint8(B));

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?