C言語なら俺に聞け 164 (157レス)
上
下
前
次
1-
新
139
:
(ワッチョイ 1f7b-Y7Iz)
11/12(水)23:55
ID:MQmntoo50(7/8)
AA×
[240|
320
|
480
|
600
|
100%
|
JPG
|
べ
|
レス栞
|
レス消
]
139: (ワッチョイ 1f7b-Y7Iz) [sage] 2025/11/12(水) 23:55:46.80 ID:MQmntoo50 ここでおそらく、tarでアーカイブし、ディレクトリ名が重複するので端折る事を想定していると思われるが、 これは間違いだ。『ディレクトリ文字列』ではなく、単純に『文字列』を端折るだけでいい。 つまり、 ファイルシステム上: ./pathA/pathB/hoge.txt ./pathA/pathB/hogehoge.txt ./pathA/pathB/hogehogehoge.txt はちみつ式tarアーカイブ:(ファイル名先頭に同一『ディレクトリ』かマークする=デリミタ文字を認識しないといけない) (新)./pathA/pathB/hoge.txt (同)hogehoge.txt (同)hogehogehoge.txt 俺式tarアーカイブ:(直前レコードと『文字列が』頭から何文字同じかマークする=デリミタ文字を気にする必要ない) (0)./pathA/pathB/hoge.txt (18)hoge.txt (22)hoge.txt この例は偶々、俺式の方が圧縮出来るが、実際はこんな都合のいいファイル名並びはほとんど無い。 マークサイズが、はちみつ式はbool、俺式はint(またはshort/char)なので、実際にどちらが小さいかは場合によりけりだろう。 ただポイントは、俺式はファイルのデリミタ文字がMには関係ないところだ。 Mはただの倉庫であって、文字列→中身、が出来れば十分で、外部の仕様には一切依存しない、ということ。 (はちみつ式はデリミタが/であるunix仕様がMに癒着している。とはいえこれが問題になる事はまずないはずだが) http://mevius.5ch.net/test/read.cgi/tech/1753252201/139
ここでおそらくでアーカイブしディレクトリ名が重複するので端折る事を想定していると思われるが これは間違いだディレクトリ文字列ではなく単純に文字列を端折るだけでいい つまり ファイルシステム上 はちみつ式アーカイブファイル名先頭に同一ディレクトリかマークするデリミタ文字を認識しないといけない 新 同 同 俺式アーカイブ直前レコードと文字列が頭から何文字同じかマークするデリミタ文字を気にする必要ない この例は偶俺式の方が圧縮出来るが実際はこんな都合のいいファイル名並びはほとんど無い マークサイズがはちみつ式は俺式はまたはなので実際にどちらが小さいかは場合によりけりだろう ただポイントは俺式はファイルのデリミタ文字がには関係ないところだ はただの倉庫であって文字列中身が出来れば十分で外部の仕様には一切依存しないということ はちみつ式はデリミタがである仕様がに癒着しているとはいえこれが問題になる事はまずないはずだが
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 18 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
ぬこの手
ぬこTOP
0.047s