如何解决自动填充每行最多固定列宽的空间
我试图在大型数据集上将每行的列宽设置为固定的“511”宽度。如果该行的列宽小于 511,那么我想在该行的末尾添加空格,直到它具有 511 列宽。目前,我遇到了很多列宽不规则的条目。例如,如果列宽是 450,即小于 511,那么我手动添加空间直到它有 511 宽度,如果列宽超过 511 那么我将删除空间直到它是 511。当前数据集有超过 100 万行,所以我想知道是否有更快的方法在每行的末尾添加“空格”。将不胜感激任何帮助。
Sample of irregular column width
解决方法
如果没有很多不规则的行(如果大多数行是 511 个字符长),你可以使用这个宏。否则,此宏可能需要很长时间才能完成。
COLUMN = 511 + 1; // add 1 to the width
Redraw = false;
nLines = document.GetLines();
for( y = 1; y <= nLines; ++y ) {
document.selection.SetActivePoint( eePosLogical,1,y );
document.selection.EndOfLine( false,eeLineLogical );
x = document.selection.GetActivePointX( eePosLogical );
if( x < COLUMN ) {
s = "";
for( i = COLUMN - x ; i > 0; --i ) {
s += " ";
}
document.selection.Text = s;
}
else if( x > COLUMN ) {
document.selection.SetActivePoint( eePosLogical,COLUMN,y,true );
document.selection.Delete();
}
}
要运行此代码,请将此代码保存为例如 AutoSpace.jsee
,然后从 宏 菜单中的 选择... 中选择此文件。最后,在宏菜单中选择运行 AutoSpace.jsee。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。