質問するログイン新規登録

回答編集履歴

5

BOM無し決め打ちの場合を追記

2020/08/17 07:31

投稿

SHOMI
SHOMI

スコア4079

answer CHANGED
@@ -9,4 +9,10 @@
9
9
 
10
10
  ---
11
11
  質問が編集されたので追記。
12
- サーバー1で出力されるファイルが間違いなくBOMなしのUTF8ファイルだというのであれば、ファイルの先頭に固定で0xEF 0xBB 0xBFをつけるだけでよいのでは?
12
+ サーバー1で出力されるファイルが間違いなくBOMなしのUTF8ファイルだというのであれば、ファイルの先頭に固定で0xEF 0xBB 0xBFをつけるだけでよいのでは?
13
+
14
+ ---
15
+ 1ファイル、BOMなしかを確認せずに決め打ちで追加する場合。
16
+ ```PowerShell
17
+ ((&{([byte[]] @(0xEF, 0xBB, 0xBF))}) + (get-content BOM追加するファイルパス -encoding byte)) | set-content BOM追加するファイルパス -encoding byte
18
+ ```

4

指摘追加

2020/08/17 07:31

投稿

SHOMI
SHOMI

スコア4079

answer CHANGED
@@ -5,4 +5,8 @@
5
5
  ```
6
6
 
7
7
  PowerShellのみで処理できます。
8
- `*.cpp,*.hpp`の部分は処理したいファイル名に合わせて変更してください。
8
+ `*.cpp,*.hpp`の部分は処理したいファイル名に合わせて変更してください。
9
+
10
+ ---
11
+ 質問が編集されたので追記。
12
+ サーバー1で出力されるファイルが間違いなくBOMなしのUTF8ファイルだというのであれば、ファイルの先頭に固定で0xEF 0xBB 0xBFをつけるだけでよいのでは?

3

コード転載

2020/08/17 06:52

投稿

SHOMI
SHOMI

スコア4079

answer CHANGED
@@ -1,5 +1,8 @@
1
1
  `UTF8 BOM 付ける Windows`で検索すると以下のページが出てきました。
2
2
  [WindowsですべてのUTF-8ファイルにBOMを付ける、たったひとつの冴えたやり方](https://qiita.com/aokomoriuta/items/b1182d310ec4ef2d76b7)
3
+ ```PowerShell
4
+ get-childitem * -include *.cpp,*.hpp -Recurse | foreach-object {((&{if ((Compare-Object (get-content $_.FullName -encoding byte)[0..2] @(0xEF, 0xBB, 0xBF)).length -eq 0){ @() } else { ([byte[]] @(0xEF, 0xBB, 0xBF)) } }) + (get-content $_.FullName -encoding byte)) | set-content $_.FullName -encoding byte}
5
+ ```
3
6
 
4
7
  PowerShellのみで処理できます。
5
8
  `*.cpp,*.hpp`の部分は処理したいファイル名に合わせて変更してください。

2

ファイル名について追記

2020/08/17 06:48

投稿

SHOMI
SHOMI

スコア4079

answer CHANGED
@@ -2,4 +2,4 @@
2
2
  [WindowsですべてのUTF-8ファイルにBOMを付ける、たったひとつの冴えたやり方](https://qiita.com/aokomoriuta/items/b1182d310ec4ef2d76b7)
3
3
 
4
4
  PowerShellのみで処理できます。
5
- 当然ですが、`*.cpp,*.hpp`の部分は処理したいファイル名に合わせて変更してください。
5
+ `*.cpp,*.hpp`の部分は処理したいファイル名に合わせて変更してください。

1

ファイル名について追記

2020/08/17 06:46

投稿

SHOMI
SHOMI

スコア4079

answer CHANGED
@@ -1,2 +1,5 @@
1
- `UTF8 BOM 付ける Windows`で検索すると以下のページが出てきますが、だめですか?
1
+ `UTF8 BOM 付ける Windows`で検索すると以下のページが出てきました。
2
- [WindowsですべてのUTF-8ファイルにBOMを付ける、たったひとつの冴えたやり方](https://qiita.com/aokomoriuta/items/b1182d310ec4ef2d76b7)
2
+ [WindowsですべてのUTF-8ファイルにBOMを付ける、たったひとつの冴えたやり方](https://qiita.com/aokomoriuta/items/b1182d310ec4ef2d76b7)
3
+
4
+ PowerShellのみで処理できます。
5
+ 当然ですが、`*.cpp,*.hpp`の部分は処理したいファイル名に合わせて変更してください。