使用python遍历文件夹将文件夹中所有的txt文本转为html连接形式。

如文本类容是:1 java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.HashMap
at com.duowan.sdk.channel.ChannelAttentionModule.getLiveUrl(Unknown Source)
getUid
access$100
把他转化成:3 <a href="文本名称.txt">java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.HashMap</a><br>
前面的3是文本当中的第一个字符。href=文本名称,后面接的连接名称是该文本中第一行数据,除开前面的数字。

import os
def getalltxtfilename(path):
    txtfilenames=[]
    for dirpath,dirnames,filenames in os.walk(path):
        filenames=filter(lambda filename:filename[-4:]=='.txt',filenames)
        filenames=map(lambda filename:os.path.join(dirpath,filename),filenames)
        txtfilenames.extend(filenames)
    return txtfilenames
def txttohtmllink(path):
    filenames=getalltxtfilename(path)
    htmllink=[]
    for filename in filenames:
        if os.path.isfile(filename):
            htmllinktext=''
            myfile=open(filename)
            firstline=myfile.readline()
            while firstline and len(firstline)<2:
                firstline=myfile.readline()
            if not firstline:
                firstline=' '*2
            else:
                firstline=firstline.strip('\r\n')
            htmllinktext+=firstline[0]+' <a href="'+\
            filename+'">'+\
            firstline[1:]+'</a><br>'
            htmllink.append(htmllinktext)
            myfile.close()
    return htmllink
path=r"文件夹路径"         #将此处替换为实际文件夹的路径
htmllinks=txttohtmllink(path)
for htmllink in htmllinks:
    print htmllink

在html标记前加上一个字符,这就不是合法的html文本形式,还是按照要求做了,如果输入到html文件肯定会出错

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-23
没看明白什么意思。lz是妹子的话欢迎留个QQ探讨
第2个回答  2013-08-23
没看明白什么意思
相似回答