当用EncodeStream(Stream,sm1);//将内存流编码为base64字符流,转为base64编码后,会每76行后加一个回车换行字符,使用中应该去掉:
streamstr:=stringreplace(sm1.DataString,#13#10,'',[rfReplaceAll, rfIgnoreCase]);
或 streamstr:=stringreplace(sm1.DataString,#$D#$A,'',[rfReplaceAll, rfIgnoreCase]);