回答編集履歴

1

追記

2018/10/17 07:14

投稿

hayataka2049
hayataka2049

スコア30933

test CHANGED
@@ -3,3 +3,35 @@
3
3
 
4
4
 
5
5
  文字コードは、エラーから察するにBOM付きUTF-8ではないでしょうか。`encoding='utf_8_sig'`を試してみてください。
6
+
7
+
8
+
9
+
10
+
11
+ ### 追記
12
+
13
+ ```
14
+
15
+ Traceback (most recent call last):
16
+
17
+ File "C:\Users\sera\PycharmProjects\PatentApp\patentApp\copyXMLfiles.py", line 37, in <module>
18
+
19
+ for row in ff: # 元ファイルから1行ずつ読みだして
20
+
21
+ File "C:\Program Files\Python37\lib\codecs.py", line 712, in __next__
22
+
23
+ return next(self.reader)
24
+
25
+ File "C:\Program Files\Python37\lib\codecs.py", line 643, in __next__
26
+
27
+ line = self.readline()
28
+
29
+ UnicodeDecodeError: 'euc_jp' codec can't decode byte 0xbf in position 2: illegal multibyte sequence
30
+
31
+ [Finished in 0.221s]
32
+
33
+ ```
34
+
35
+
36
+
37
+ なので、ff(読み込み側ファイル)が想定している文字コードと違うことは確実です。ヒントは「byte 0xbf in position 2」で、3バイト目(0から数えるから)に0xbfがあるということですから、BOMつきUTF-8のBOM「0xEF 0xBB 0xBF」を拾っている可能性が濃厚……ということです。