Visual CSV Reader什么不保留文件“打开”

我正在寻找一种方法来查看CSV文件,因为你会在Excel中(很好的清晰的布局),唯一的问题是,它不会通知你的更新,也不会closures文件,一旦它“打开”不像记事本++允许你看到文件更新的时间,它也允许你打开文件然后操纵它可以说python…

Notepad ++的唯一问题是无法轻松读取CSV。

记事本+ +

  • 优点
    • “这个文件已经被其他程序修改了,你想重新加载吗?”
    • 数据加载完成后closures文件。
    • 可以轻松与其他文件进行比较。
  • 缺点
    • 没有清晰的视觉观众。

高强

  • 优点
    • 清晰的视觉观众。
  • 缺点
    • 数据加载完成后,不要closures文件。
    • 当文件被其他程序修改时,不会提醒您(如果在Excel中打开,则无法对其进行修改)
    • 无法轻松与其他文件进行比较。

任何人都知道一个程序来帮助我?

之前

data,data,datalongdatadatalongdata,datalongdata,datalongdata,data,data,data,datalongdata,data,data,data,data,datalongdata,datalongdata,data data,data,data,data,data,data,data,data,data,data,data,data,data,data,data,data data,data,data,data,data,data,data,data,data,data,data,data,data,data,data,data data,data,data,data,data,data,data,data,data,data,data,data,data,data,datalongdatadatalongdatadatalongdatadatalongdatadatalongdata,data data,data,data,data,data,data,data,data,data'data,data,data,data,data,data,data,data data,data,data,data,data,data,data,data,data,data,data,data,data,data,data,data data,data,data,data,data,data,data,data,data,data,data,data,data,data,data,data data,data,data,data,data,data,data,data,data,data,data,data,data,datalongdatadatalongdatadatalongdatadatalongdata,data,data 

之后(查看第5行的data'data

 data,data,datalongdatadatalongdata,datalongdata,datalongdata,data,data,data,datalongdata,data,data,data,data,datalongdata,datalongdata ,data data,data,data ,data ,data ,data,data,data,data ,data,data,data,data,data ,data ,data data,data,data ,data ,data ,data,data,data,data ,data,data,data,data,data ,data ,data data,data,data ,data ,data ,data,data,data,data ,data,data,data,data,data ,datalongdatadatalongdatadatalongdatadatalongdatadatalongdata,data data,data,data ,data ,data ,data,data,data,data'data,data,data,data,data,data,data,data data,data,data ,data ,data ,data,data,data,data,data,data,data,data,data,data,data data,data,data ,data ,data ,data,data,data,data,data,data,data,data,data,data,data data,data,data ,data ,data ,data,data,data,data,data,data,data,data,datalongdatadatalongdatadatalongdatadatalongdata,data,data 

我回来了一个新的答案:)在TextFX发现错误后,我决定使用Python Script插件创build更好的东西。

例子

它会转换下面的例子:

 heeey,this,is,a,testtttttttttt 34,3 123,123,123,123,123 

至:

 + ----------------------------------------- + | heeey | this | is | a | testtttttttttt | | 34 | 3 | | | | | 123 | 123 | 123 | 123 | 123 | + ----------------------------------------- + 

还有以下几点:

 title1,title2,title3,title4,title5,title6,title7,title8,title9 datalongdata,datalongdata,data,data,data,datalongdata,data,data,data data,data,data,data,data,data,data,datalongdatadatalongdatadatalongdatadatalongdatadatalongdata,data data,data'data,data,data,data,data,data,data,data 

至:

 + ------------------------------------------------------------------------------------------------------------------------------------------------------ + | title1 | title2 | title3 | title4 | title5 | title6 | title7 | title8 | title9 | + ------------------------------------------------------------------------------------------------------------------------------------------------------ + | datalongdata | datalongdata | data | data | data | datalongdata | data | data | data | | data | data | data | data | data | data | data | datalongdatadatalongdatadatalongdatadatalongdatadatalongdata | data | | data | data'data | data | data | data | data | data | data | data | + ------------------------------------------------------------------------------------------------------------------------------------------------------ + 

安装

  1. Plugin Manager或从官方网站安装Python Script插件。
  2. 安装后,进入Plugins > Python Script > New Script 。 为你的新文件select一个文件名(例如pretty_csv.py )并复制下面的代码。
  3. 打开你的csv文件,然后运行Plugins > Python Script > Scripts > pretty_csv.py 。 这将打开一个新的选项卡与您的表。

请注意,脚本的前几行可以改变一些参数。 我希望variables名称是不言自明的! 我想最重要的是布尔的, borderheader

 #define parameters delimiter="," new_delimiter=" | " border=True border_vertical_left="| " border_vertical_right=" |" border_horizontal="-" border_corner_tl="+ " border_corner_tr=" +" border_corner_bl="+ " border_corner_br=" +" header=True border_header_separator="-" border_header_left="+ " border_header_right=" +" newline="\n" #load csv content=editor.getText() content=content.rstrip(newline) rows=content.split(newline) #find the max number of columns (so having rows with different number of columns is no problem) max_columns=max([row.count(delimiter) for row in rows]) if max_columns>0: max_columns=max_columns+1 #find the max width of each column column_max_width=[0]*max_columns for row in rows: for index,column in enumerate(row.split(delimiter)): width=len(column) if width>column_max_width[index]: column_max_width[index]=width total_length=sum(column_max_width)+len(new_delimiter)*(max_columns-1) #create new document notepad.new() #apply the changes left=border_vertical_left if border is True else "" right=border_vertical_right if border is True else "" left_header=border_header_left if border is True else "" right_header=border_header_right if border is True else "" for row_number,row in enumerate(rows): columns=row.split(delimiter) max_index=len(columns)-1 for index in range(max_columns): if index>max_index: columns.append(' ' * column_max_width[index]) else: diff=column_max_width[index]-len(columns[index]) columns[index]=columns[index] + ' ' * diff if row_number==0 and border is True: #draw top border editor.addText(border_corner_tl + border_horizontal * total_length + border_corner_tr + newline) editor.addText(left + new_delimiter.join(columns) + right + newline) #print the new row if row_number==0 and header is True: #draw header's separator editor.addText(left_header + border_header_separator * total_length + right_header + newline) if row_number==len(rows)-1 and border is True: #draw bottom border editor.addText(border_corner_bl + border_horizontal * total_length + border_corner_br) else: console.clear() console.show() console.writeError("No \"%s\" delimiter found!" % delimiter) 

如果您发现任何错误或有任何build议,请让我知道!

在Notepad ++中,您永远无法实现Excel的绝佳视觉体验!

我所知道的唯一“解决scheme”就在于TextFX插件。

select所有文本,然后进入TextFX > TextFX Edit > Line up multiple lines by (,) 。 这将转换下面的例子:

 heeey,this,is,a,testtttttttttt 34,3,2234,3,5 123,123,123,123,123 

至:

 heeey,this,is ,a ,testtttttttttt 34 ,3 ,2234,3 ,5 123 ,123 ,123 ,123,123 

PS。 你可能想检查CSVed 。 从来没有使用它,所以我不知道它是否有你需要的所有function,但从截图看起来不错:)