799 @param filename name of a templates file to read (string) |
799 @param filename name of a templates file to read (string) |
800 """ |
800 """ |
801 try: |
801 try: |
802 if filename is None: |
802 if filename is None: |
803 filename = os.path.join(Utilities.getConfigDir(), "eric5templates.e4c") |
803 filename = os.path.join(Utilities.getConfigDir(), "eric5templates.e4c") |
804 f = open(filename, "w") |
804 f = open(filename, "w", encoding = "utf-8") |
805 |
805 |
806 TemplatesWriter(f, self).writeXML() |
806 TemplatesWriter(f, self).writeXML() |
807 |
807 |
808 f.close() |
808 f.close() |
809 except IOError: |
809 except IOError: |
821 try: |
821 try: |
822 if filename is None: |
822 if filename is None: |
823 filename = os.path.join(Utilities.getConfigDir(), "eric5templates.e4c") |
823 filename = os.path.join(Utilities.getConfigDir(), "eric5templates.e4c") |
824 if not os.path.exists(filename): |
824 if not os.path.exists(filename): |
825 return |
825 return |
826 f = open(filename, "r") |
826 f = open(filename, "r", encoding = "utf-8") |
827 line = f.readline() |
827 line = f.readline() |
828 dtdLine = f.readline() |
828 dtdLine = f.readline() |
829 f.close() |
829 f.close() |
830 except IOError: |
830 except IOError: |
831 QMessageBox.critical(None, |
831 QMessageBox.critical(None, |
844 parser.setContentHandler(handler) |
844 parser.setContentHandler(handler) |
845 parser.setEntityResolver(er) |
845 parser.setEntityResolver(er) |
846 parser.setErrorHandler(eh) |
846 parser.setErrorHandler(eh) |
847 |
847 |
848 try: |
848 try: |
849 f = open(filename, "r") |
849 f = open(filename, "r", encoding = "utf-8") |
850 try: |
850 try: |
851 try: |
851 try: |
852 parser.parse(f) |
852 parser.parse(f) |
853 except UnicodeEncodeError: |
853 except UnicodeEncodeError: |
854 f.seek(0) |
854 f.seek(0) |