当前位置: 首页>>代码示例>>Python>>正文


Python QTextStream.codec方法代码示例

本文整理汇总了Python中PyQt5.QtCore.QTextStream.codec方法的典型用法代码示例。如果您正苦于以下问题:Python QTextStream.codec方法的具体用法?Python QTextStream.codec怎么用?Python QTextStream.codec使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在PyQt5.QtCore.QTextStream的用法示例。


在下文中一共展示了QTextStream.codec方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: save

# 需要导入模块: from PyQt5.QtCore import QTextStream [as 别名]
# 或者: from PyQt5.QtCore.QTextStream import codec [as 别名]
    def save(self, content, path=None):
        """
        Write a temporary file with .tnj extension and copy it over the
        original one.
        .nsf = Ninja Swap File
        # FIXME: Where to locate addExtension, does not fit here
        """
        new_path = False
        if path:
            self.attach_to_path(path)
            new_path = True

        save_path = self._file_path

        if not save_path:
            raise NinjaNoFileNameException("I am asked to write a "
                                           "file but no one told me where")
        swap_save_path = "%s.nsp" % save_path

        # If we have a file system watcher, remove the file path
        # from its watch list until we are done making changes.
        if self.__watcher is not None:
            self.__watcher.removePath(save_path)

        flags = QIODevice.WriteOnly | QIODevice.Truncate
        f = QFile(swap_save_path)
        if settings.use_platform_specific_eol():
            flags |= QIODevice.Text

        if not f.open(flags):
            raise NinjaIOException(f.errorString())

        stream = QTextStream(f)
        encoding = get_file_encoding(content)
        if encoding:
            stream.setCodec(encoding)

        encoded_stream = stream.codec().fromUnicode(content)
        f.write(encoded_stream)
        f.flush()
        f.close()
        # SIGNAL: Will save (temp, definitive) to warn folder to do something
        self.willSave.emit(swap_save_path, save_path)
        self.__mtime = os.path.getmtime(swap_save_path)
        shutil.move(swap_save_path, save_path)
        self.reset_state()

        # If we have a file system watcher, add the saved path back
        # to its watch list, otherwise create a watcher and start
        # watching
        if self.__watcher is not None:
            if new_path:
                # self.__watcher.removePath(self.__watcher.files()[0])
                self.__watcher.addPath(self._file_path)
            else:
                self.__watcher.addPath(save_path)
        else:
            self.start_watching()
        return self
开发者ID:ninja-ide,项目名称:ninja-ide,代码行数:61,代码来源:nfile.py

示例2: _autosave

# 需要导入模块: from PyQt5.QtCore import QTextStream [as 别名]
# 或者: from PyQt5.QtCore.QTextStream import codec [as 别名]
 def _autosave(self):
     if self._neditable.editor.is_modified:
         flags = QIODevice.WriteOnly
         f = QFile(self.filename())
         if not f.open(flags):
             raise IOError(f.errorString())
         content = self._neditable.editor.text
         stream = QTextStream(f)
         encoded_stream = stream.codec().fromUnicode(content)
         f.write(encoded_stream)
         f.flush()
         f.close()
开发者ID:ninja-ide,项目名称:ninja-ide,代码行数:14,代码来源:nswapfile.py


注:本文中的PyQt5.QtCore.QTextStream.codec方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。