RE: Opening & writing to UTF-8 files; copyright symbol again -- solution

[email protected] ("PHILLIPS M.E.") Mon, 16 Nov 2015 09:49:24 +0000
Newsgroups perl.perl4lib
Message-ID <DE5A87935C81284782298B0D297D6784224471AA@CISCMRMBS02.mds.ad.dur.ac.uk>
--_000_DE5A87935C81284782298B0D297D6784224471AACISCMRMBS02mdsa_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

VGhlIGNvcHlyaWdodCBzeW1ib2wgaXMgbm90IG9uZSBvZiB0aGUgY2hhcmFjdGVycyBmb3Igd2hp
Y2ggdGhlcmUgYXJlIHR3byByZXByZXNlbnRhdGlvbnMuDQoNCk9uZSB0aGluZyB0aGF0IGNhbiBj
b25mdXNlIHBlb3BsZSBhYm91dCBVbmljb2RlIGlzIHRoZSBkaXN0aW5jdGlvbiBiZXR3ZWVuIHRo
ZSDigJxjb2RlIHBvaW504oCdWzFdIGFuZCB0aGUgcmVwcmVzZW50YXRpb24gb2YgdGhlIGNvZGUg
cG9pbnQgaW4gdGhlIHZhcmlvdXMgVW5pY29kZSB0cmFuc2Zvcm1hdGlvbiBmb3JtYXRzIHN1Y2gg
YXMgVVRGLTgsIFVURi0xNiwgVVRGLTMyIGFuZCBzbyBvbi4NCg0KVGhlIGNvcHlyaWdodCBzeW1i
b2wgaGFzIGNvZGUgcG9pbnQgQTkgKHJlcHJlc2VudGVkIGluIGhleGFkZWNpbWFsKSBpbiBib3Ro
IElTTy1MYXRpbi0xIGFuZCBVbmljb2RlLCBtb3JlIGNvbW1vbmx5IHdyaXR0ZW4gd2l0aCBzb21l
IGxlYWRpbmcgemVyb3MsIGUuZy4gVSswMEE5LiBCdXQgd2hlbiBBOSBpcyByZXByZXNlbnRlZCBp
biBVVEYtOCB0aGUgYWN0dWFsIHNlcXVlbmNlIG9mIGJ5dGVzIGluIG1lbW9yeSBvciBpbiBhIGZp
bGUgaXMgQzIgZm9sbG93ZWQgYnkgQTkuICBJbiBVVEYtMTYgYW5kIFVURi0zMiB5b3Ugd2lsbCBz
ZWUgYW4gQTkgYW5kIGVub3VnaCB6ZXJvIGJ5dGVzIHRvIHBhZCB0byAyIG9yIDQgYnl0ZXMgcmVz
cGVjdGl2ZWx5LCBidXQgdGhlcmUgeW91IHdpbGwgaGF2ZSB0aGUgY29tcGxpY2F0aW9uIHRoYXQg
dGhlIGJ5dGVzIG1heSBiZSBpbiBiaWctZW5kaWFuIG9yIGxpdHRsZS1lbmRpYW4gb3JkZXIsIGku
ZS4gQTkgMDAgMDAgMDAgZm9yIGxpdHRsZS1lbmRpYW4sIG9yIDAwIDAwIDAwIEE5IGZvciBiaWcg
ZW5kaWFuLg0KDQpJIGFsd2F5cyBmaW5kIHRoZSB3d3cuZmlsZWZvcm1hdC5pbmZvPGh0dHA6Ly93
d3cuZmlsZWZvcm1hdC5pbmZvPiBwYWdlcyB1c2VmdWwgZm9yIHJlZmVyZW5jZSBbMl0uDQoNCk1h
dHRoZXcNCg0KDQpbMV0gaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQ29kZV9wb2ludA0K
WzJdIGh0dHA6Ly93d3cuZmlsZWZvcm1hdC5pbmZvL2luZm8vdW5pY29kZS9jaGFyL2E5L2luZGV4
Lmh0bQ0KDQpGcm9tOiBTaGVsbGV5IERvbGphY2sgW21haWx0bzpzZG9samFja0BzdGFuZm9yZC5l
ZHVdDQpTZW50OiAxMyBOb3ZlbWJlciAyMDE1IDIyOjMwDQpUbzogSGlnaHNtaXRoLCBBbm5lIEw7
IHBlcmw0bGliQHBlcmwub3JnDQpTdWJqZWN0OiBSRTogT3BlbmluZyAmIHdyaXRpbmcgdG8gVVRG
LTggZmlsZXM7IGNvcHlyaWdodCBzeW1ib2wgYWdhaW4gLS0gc29sdXRpb24NCg0KSGV5LCB0aGF0
4oCZcyBteSBwb3N0ISBBbnl3YXlzLCBJIGhhdmVu4oCZdCByZWFsbHkgbG9va2VkIGludG8gd2hh
dCB5b3VyIHByb2JsZW0gaXMsIGJ1dCB3aGVuIHlvdSBzYWlkIHRoYXQgdGhlIGNvcHlyaWdodCBj
aGFyYWN0ZXIgaXMgZ2V0dGluZyB0cmFuc2Zvcm1lZCB0byBBOSBldmVuIHRob3VnaCBpdCBpcyBz
dXBwb3NlZGx5IHN0b3JlZCBhcyBDMiBBOSBpbiB0aGUgZGF0YWJhc2UsIGl0IG1hZGUgbWUgdGhp
bmsgb2YgaG93IHRoZXJlIGNhbiBiZSB0d28gVVRGLTggcmVwcmVzZW50YXRpb25zIGZvciB0aGUg
c2FtZSBjaGFyYWN0ZXIgaW4gc29tZSBzZWN0aW9ucyBvZiB0aGUgVW5pY29kZSBzZXQuIEkgd29u
ZGVyIGlmIHRoYXQgaXMgc29tZWhvdyBoYXBwZW5pbmcgZm9yIHlvdS4NCg0KU2hlbGxleQ0K

--_000_DE5A87935C81284782298B0D297D6784224471AACISCMRMBS02mdsa_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv
ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTQgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl
PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
Q2FsaWJyaTsNCglwYW5vc2UtMToyIDE1IDUgMiAyIDIgNCAzIDIgNDt9DQpAZm9udC1mYWNlDQoJ
e2ZvbnQtZmFtaWx5OlRhaG9tYTsNCglwYW5vc2UtMToyIDExIDYgNCAzIDUgNCA0IDIgNDt9DQov
KiBTdHlsZSBEZWZpbml0aW9ucyAqLw0KcC5Nc29Ob3JtYWwsIGxpLk1zb05vcm1hbCwgZGl2Lk1z
b05vcm1hbA0KCXttYXJnaW46MGNtOw0KCW1hcmdpbi1ib3R0b206LjAwMDFwdDsNCglmb250LXNp
emU6MTEuMHB0Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIiwic2Fucy1zZXJpZiI7fQ0KYTpsaW5r
LCBzcGFuLk1zb0h5cGVybGluaw0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6IzA1
NjNDMTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCmE6dmlzaXRlZCwgc3Bhbi5Nc29I
eXBlcmxpbmtGb2xsb3dlZA0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6Izk1NEY3
MjsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCnAuTXNvQWNldGF0ZSwgbGkuTXNvQWNl
dGF0ZSwgZGl2Lk1zb0FjZXRhdGUNCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCW1zby1zdHls
ZS1saW5rOiJCYWxsb29uIFRleHQgQ2hhciI7DQoJbWFyZ2luOjBjbTsNCgltYXJnaW4tYm90dG9t
Oi4wMDAxcHQ7DQoJZm9udC1zaXplOjguMHB0Ow0KCWZvbnQtZmFtaWx5OiJUYWhvbWEiLCJzYW5z
LXNlcmlmIjt9DQpzcGFuLkVtYWlsU3R5bGUxNw0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbDsN
Cglmb250LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOw0KCWNvbG9yOndpbmRvd3RleHQ7
fQ0Kc3Bhbi5FbWFpbFN0eWxlMTgNCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWw7DQoJZm9udC1m
YW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsNCgljb2xvcjp3aW5kb3d0ZXh0Ow0KCWZvbnQt
d2VpZ2h0Om5vcm1hbDsNCglmb250LXN0eWxlOm5vcm1hbDt9DQpzcGFuLkJhbGxvb25UZXh0Q2hh
cg0KCXttc28tc3R5bGUtbmFtZToiQmFsbG9vbiBUZXh0IENoYXIiOw0KCW1zby1zdHlsZS1wcmlv
cml0eTo5OTsNCgltc28tc3R5bGUtbGluazoiQmFsbG9vbiBUZXh0IjsNCglmb250LWZhbWlseToi
VGFob21hIiwic2Fucy1zZXJpZiI7fQ0Kc3Bhbi5FbWFpbFN0eWxlMjENCgl7bXNvLXN0eWxlLXR5
cGU6cGVyc29uYWwtcmVwbHk7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsN
Cgljb2xvcjojMUY0OTdEO30NCi5Nc29DaHBEZWZhdWx0DQoJe21zby1zdHlsZS10eXBlOmV4cG9y
dC1vbmx5Ow0KCWZvbnQtc2l6ZToxMC4wcHQ7fQ0KQHBhZ2UgV29yZFNlY3Rpb24xDQoJe3NpemU6
NjEyLjBwdCA3OTIuMHB0Ow0KCW1hcmdpbjo3Mi4wcHQgNzIuMHB0IDcyLjBwdCA3Mi4wcHQ7fQ0K
ZGl2LldvcmRTZWN0aW9uMQ0KCXtwYWdlOldvcmRTZWN0aW9uMTt9DQotLT48L3N0eWxlPjwhLS1b
aWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hhcGVkZWZhdWx0cyB2OmV4dD0iZWRpdCIgc3BpZG1h
eD0iMTAyNiIgLz4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0K
PG86c2hhcGVsYXlvdXQgdjpleHQ9ImVkaXQiPg0KPG86aWRtYXAgdjpleHQ9ImVkaXQiIGRhdGE9
IjEiIC8+DQo8L286c2hhcGVsYXlvdXQ+PC94bWw+PCFbZW5kaWZdLS0+DQo8L2hlYWQ+DQo8Ym9k
eSBsYW5nPSJFTi1HQiIgbGluaz0iIzA1NjNDMSIgdmxpbms9IiM5NTRGNzIiPg0KPGRpdiBjbGFz
cz0iV29yZFNlY3Rpb24xIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJjb2xv
cjojMUY0OTdEIj5UaGUgY29weXJpZ2h0IHN5bWJvbCBpcyBub3Qgb25lIG9mIHRoZSBjaGFyYWN0
ZXJzIGZvciB3aGljaCB0aGVyZSBhcmUgdHdvIHJlcHJlc2VudGF0aW9ucy48bzpwPjwvbzpwPjwv
c3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3
RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNw
YW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPk9uZSB0aGluZyB0aGF0IGNhbiBjb25mdXNlIHBlb3Bs
ZSBhYm91dCBVbmljb2RlIGlzIHRoZSBkaXN0aW5jdGlvbiBiZXR3ZWVuIHRoZSDigJxjb2RlIHBv
aW504oCdWzFdIGFuZCB0aGUgcmVwcmVzZW50YXRpb24gb2YgdGhlIGNvZGUgcG9pbnQgaW4gdGhl
IHZhcmlvdXMgVW5pY29kZSB0cmFuc2Zvcm1hdGlvbiBmb3JtYXRzIHN1Y2ggYXMgVVRGLTgsIFVU
Ri0xNiwgVVRGLTMyDQogYW5kIHNvIG9uLjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpw
Pjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iY29sb3I6IzFG
NDk3RCI+VGhlIGNvcHlyaWdodCBzeW1ib2wgaGFzIGNvZGUgcG9pbnQgQTkgKHJlcHJlc2VudGVk
IGluIGhleGFkZWNpbWFsKSBpbiBib3RoIElTTy1MYXRpbi0xIGFuZCBVbmljb2RlLCBtb3JlIGNv
bW1vbmx5IHdyaXR0ZW4gd2l0aCBzb21lIGxlYWRpbmcgemVyb3MsIGUuZy4gVSYjNDM7MDBBOS4g
QnV0IHdoZW4gQTkgaXMgcmVwcmVzZW50ZWQgaW4gVVRGLTggdGhlIGFjdHVhbA0KIHNlcXVlbmNl
IG9mIGJ5dGVzIGluIG1lbW9yeSBvciBpbiBhIGZpbGUgaXMgQzIgZm9sbG93ZWQgYnkgQTkuJm5i
c3A7IEluIFVURi0xNiBhbmQgVVRGLTMyIHlvdSB3aWxsIHNlZSBhbiBBOSBhbmQgZW5vdWdoIHpl
cm8gYnl0ZXMgdG8gcGFkIHRvIDIgb3IgNCBieXRlcyByZXNwZWN0aXZlbHksIGJ1dCB0aGVyZSB5
b3Ugd2lsbCBoYXZlIHRoZSBjb21wbGljYXRpb24gdGhhdCB0aGUgYnl0ZXMgbWF5IGJlIGluIGJp
Zy1lbmRpYW4gb3IgbGl0dGxlLWVuZGlhbg0KIG9yZGVyLCBpLmUuIEE5IDAwIDAwIDAwIGZvciBs
aXR0bGUtZW5kaWFuLCBvciAwMCAwMCAwMCBBOSBmb3IgYmlnIGVuZGlhbi48bzpwPjwvbzpwPjwv
c3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3
RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNw
YW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPkkgYWx3YXlzIGZpbmQgdGhlIDxhIGhyZWY9Imh0dHA6
Ly93d3cuZmlsZWZvcm1hdC5pbmZvIj4NCnd3dy5maWxlZm9ybWF0LmluZm88L2E+IHBhZ2VzIHVz
ZWZ1bCBmb3IgcmVmZXJlbmNlIFsyXS48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48
L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5
N0QiPk1hdHRoZXc8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5i
c3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJj
b2xvcjojMUY0OTdEIj5bMV0gaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQ29kZV9wb2lu
dDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxl
PSJjb2xvcjojMUY0OTdEIj5bMl0gaHR0cDovL3d3dy5maWxlZm9ybWF0LmluZm8vaW5mby91bmlj
b2RlL2NoYXIvYTkvaW5kZXguaHRtPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9z
cGFuPjwvcD4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci1sZWZ0OnNvbGlkIGJsdWUg
MS41cHQ7cGFkZGluZzowY20gMGNtIDBjbSA0LjBwdCI+DQo8ZGl2Pg0KPGRpdiBzdHlsZT0iYm9y
ZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjQjVDNERGIDEuMHB0O3BhZGRpbmc6My4wcHQgMGNt
IDBjbSAwY20iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7Ij5Gcm9tOjwvc3Bhbj48L2I+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7Ij4gU2hlbGxleSBEb2xqYWNrIFttYWlsdG86c2RvbGphY2tAc3Rh
bmZvcmQuZWR1XQ0KPGJyPg0KPGI+U2VudDo8L2I+IDEzIE5vdmVtYmVyIDIwMTUgMjI6MzA8YnI+
DQo8Yj5Ubzo8L2I+IEhpZ2hzbWl0aCwgQW5uZSBMOyBwZXJsNGxpYkBwZXJsLm9yZzxicj4NCjxi
PlN1YmplY3Q6PC9iPiBSRTogT3BlbmluZyAmYW1wOyB3cml0aW5nIHRvIFVURi04IGZpbGVzOyBj
b3B5cmlnaHQgc3ltYm9sIGFnYWluIC0tIHNvbHV0aW9uPG86cD48L286cD48L3NwYW4+PC9wPg0K
PC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9w
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiPkhleSwgdGhhdOKAmXMg
bXkgcG9zdCEgQW55d2F5cywgSSBoYXZlbuKAmXQgcmVhbGx5IGxvb2tlZCBpbnRvIHdoYXQgeW91
ciBwcm9ibGVtIGlzLCBidXQgd2hlbiB5b3Ugc2FpZCB0aGF0IHRoZSBjb3B5cmlnaHQgY2hhcmFj
dGVyIGlzIGdldHRpbmcgdHJhbnNmb3JtZWQgdG8gQTkgZXZlbiB0aG91Z2ggaXQgaXMgc3VwcG9z
ZWRseSBzdG9yZWQgYXMgQzIgQTkgaW4gdGhlIGRhdGFiYXNlLA0KIGl0IG1hZGUgbWUgdGhpbmsg
b2YgaG93IHRoZXJlIGNhbiBiZSB0d28gVVRGLTggcmVwcmVzZW50YXRpb25zIGZvciB0aGUgc2Ft
ZSBjaGFyYWN0ZXIgaW4gc29tZSBzZWN0aW9ucyBvZiB0aGUgVW5pY29kZSBzZXQuIEkgd29uZGVy
IGlmIHRoYXQgaXMgc29tZWhvdyBoYXBwZW5pbmcgZm9yIHlvdS48bzpwPjwvbzpwPjwvc3Bhbj48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD4mbmJzcDs8
L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMi
PlNoZWxsZXk8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ib2R5Pg0K
PC9odG1sPg0K

--_000_DE5A87935C81284782298B0D297D6784224471AACISCMRMBS02mdsa_--