zoukankan      html  css  js  c++  java
  • 吴裕雄--天生自然python学习笔记:打开文件并显示文件内容

    Win32com 组件打开文件通过 Documents 的 Open 方法,语法为 :

    例如,打开上一节创建的 testl . docx 文件 , 文件变量名为 doc:

    获得文件内容的方法有两种,第一种较为简单,用 文件变量的 Content 方法即可
    获取全部内容,语法为 :

     

    import os
    from win32com import client
    
    word = client.gencache.EnsureDispatch('Word.Application')
    word.Visible = 1
    word.DisplayAlerts = 0
    doc = word.Documents.Add()
    range1 = doc.Range(0,0)  #文件起始处
    range1.InsertAfter("这是测试第一行
    这是测试第二行
    ")
    range1.InsertAfter("这是测试第三行
    这是测试第四行
    ")
    range1.InsertBefore("第一次插入到文件最前方
    ")
    range1.InsertBefore("再次插入到文件最前方
    ")
    # cpath = os.path.dirname(__file__)
    doc.SaveAs("E:\media\test1.docx")
    # doc.Close()
    # word.Quit()
    import os
    from win32com import client
    
    word = client.gencache.EnsureDispatch('Word.Application')
    word.Visible = 0
    word.DisplayAlerts = 0
    # cpath=os.path.dirname(__file__)
    doc = word.Documents.Open("E:\media\test1.docx")
    print(doc.Content)
    doc.Close()
    word.Quit()

    import os
    from win32com import client
    
    word = client.gencache.EnsureDispatch('Word.Application')
    word.Visible = 1
    word.DisplayAlerts = 0
    doc = word.Documents.Add()
    range1 = doc.Range(0,0)  #文件起始处
    range1.InsertAfter("这是测试第一行
    这是测试第二行
    ")
    range1.InsertAfter("这是测试第三行
    这是测试第四行
    ")
    range1.InsertBefore("第一次插入到文件最前方
    ")
    range1.InsertBefore("再次插入到文件最前方
    ")
    # cpath = os.path.dirname(__file__)
    doc.SaveAs("E:\media\test1.docx")
    # doc.Close()
    # word.Quit()
    
    
    import os
    from win32com import client
    
    word = client.gencache.EnsureDispatch('Word.Application')
    word.Visible = 0
    word.DisplayAlerts = 0
    # cpath=os.path.dirname(__file__)
    doc = word.Documents.Open("E:\media\test1.docx")
    paragraphs = doc.Paragraphs
    for p in paragraphs:
        text = p.Range.Text.strip()
        print(text)
    doc.Close()
    word.Quit()

    、. Range . Text ”实现段落内容的读取,其中的 s trip () 方法用于
    实现换行符的删除
    通过这种方法可以读取任意段落的内容,所以可根据需求来显示文件的部分内
    容。读取其中一个段落内容的语法为:

    注意 n 的值是由 1 开始,即 1 表示第一段, 2 表示第二段,依此类推 。 例如下面
    程序会显示第一段及第三段的内容:

    import os
    from win32com import client
    
    word = client.gencache.EnsureDispatch('Word.Application')
    word.Visible = 1
    word.DisplayAlerts = 0
    doc = word.Documents.Add()
    range1 = doc.Range(0,0)  #文件起始处
    range1.InsertAfter("这是测试第一行
    这是测试第二行
    ")
    range1.InsertAfter("这是测试第三行
    这是测试第四行
    ")
    range1.InsertBefore("第一次插入到文件最前方
    ")
    range1.InsertBefore("再次插入到文件最前方
    ")
    # cpath = os.path.dirname(__file__)
    doc.SaveAs("E:\media\test1.docx")
    # doc.Close()
    # word.Quit()
    
    word = client.gencache.EnsureDispatch('Word.Application')
    word.Visible = 0
    word.DisplayAlerts = 0
    # cpath=os.path.dirname(__file__)
    doc = word.Documents.Open("E:\media\test1.docx")
    paragraphs = doc.Paragraphs
    print("第一段:" + paragraphs(1).Range.Text.strip())
    print("第三段:" + paragraphs(3).Range.Text.strip())
    doc.Close()
    word.Quit()

  • 相关阅读:
    jvm 虚拟机参数_新生代内存分配
    jvm 虚拟机参数_堆内存分配
    Xshell 安装 Xftp
    使用 Xshell 连接 linux 系统
    linux 常用命令
    java JSON 和 Object 相互转换
    vsftp实现只能上传不能下载、删除权限配置
    从返回的HTTP Header信息中隐藏Apache的版本号及PHP的X-Powered-By信息
    在SecureCRT中无需输入密码登录Linux主机
    ssh 设置私钥实现两台linux主机无密码访问
  • 原文地址:https://www.cnblogs.com/tszr/p/12029803.html
Copyright © 2011-2022 走看看