教えててください。
OSは、Turbo Linuxです。
現在、大容量のファイルを操作するのに、標準関数で行おうと思っています。
seek関数を使用する場合、先頭からの位置を指定しようとするとint型の位置(符号付4バイト)になるので、容量とすると、1.9GBが限界になると思います。
しかし、扱いたいファイルの容量は、もっと大容量(200GB以上)になるので、「シークできないのでは?」と思いました。
大容量のファイルを扱う方法は、標準関数以外に何かあるのでしょうか?それとも、駆使して操作するのでしょうか?
No.2ベストアンサー
- 回答日時:
fseek関数を使用した場合、seek位置はlong int型で指定しますが、64ビットモードの場合、long intが8バイトの整数となります。
従って、200G以上のサイズが扱えるはずです。64ビットモードでfseekを使用する条件として
1.64ビットモードでコンパイルできるgccであること。(最近のgccはできるはずです。64ビット指定のオプションは調べてませんので、判りません)
2.カーネルが64ビットモードに対応していること
(これも、対応しているLINUXがあるはずですが、詳細について調べたことはないので自信なし)
が必要ですが、最近のLINUXであれば問題ないと思います。(自信なし)
No.1
- 回答日時:
fsetpos()とfgetpos()という標準関数があります。
(stdio.h内)fseek()、ftell()に概念的には同じですが、
ファイルの位置を表すのに、
long intの値ではなくてfpos_tという型を使っています。
使い方は別の資料で調べてください。
これを使えばなんとかなる可能性があります。
ヘッダファイルの中のfpos_tの型を調べて、
longより大きい型(新しくできたlong long intなど)か、
構造体だったら、1.9GB以上に対応しているかもしれません。
ただ、できない可能性もあります。
Linuxの実装については詳しくないので、できなかったらすみません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PDF PDFに精通した方に質問。JPEGファイル群を一つのPDFファイルにするときの容量変化について 6 2023/07/23 19:06
- ドライブ・ストレージ クラウドサーバにデータ移行後 Cドライブ容量が減った 3 2023/03/31 12:47
- UNIX・Linux VirtualBox ゲストOSにPC内蔵HDDのパーティションをマウントする方法は? 2 2023/05/06 22:52
- その他(クラウドサービス・オンラインストレージ) OneDriveの容量がいっぱいになったので容量を減らしたいのですが、写真と動画をパソコンのCドライ 7 2023/08/16 19:34
- Android(アンドロイド) ハードディスクの容量がない 4 2022/12/08 12:14
- サーバー ECサイトのFTPサーバーに使わないファイル20GBくらいがあるのですが、削除したら表示速度やページ 2 2022/12/20 08:45
- デスクトップパソコン ん~…分からん 7 2022/06/10 10:47
- USBメモリー・SDカード・フラッシュメモリー ファイルをコピーできない 5 2022/09/23 10:38
- Google Drive Googleドライブについて 3 2023/08/06 12:19
- Excel(エクセル) エクセルデータ。容量を減らすにはどうしたらいい? 11 2022/12/22 09:01
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Latexで図番号だけを「図1.1」...
-
公文書のxmlファイルの開き方が...
-
#include <Windows.h>というヘ...
-
Word VBA MSGBOX 内で降順表示
-
binファイルを解凍したいの...
-
参照するファイルをワイルドカ...
-
C言語---ファイルに出力したデ...
-
アクセス 壊れた? 「ファイ...
-
CSSを1ページに1枚作るのって変...
-
【VBS】 iniファイルの特定部...
-
エクセルファイルが複数同時に...
-
.NETアプリを作ったときの .man...
-
バッチ処理で追記コピーしたい
-
JRのjsonファイルって使って大...
-
jarファイル
-
コマンドプロンプトで、指定し...
-
exeファイルが作れない(windows10)
-
ラッパーって何なんでしょう・...
-
warファイルをEclipseでプロジ...
-
jarファイルはzipファイルと同...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
iPhoneでXMLファイルを開くには...
-
公文書のxmlファイルの開き方が...
-
binファイルを解凍したいの...
-
アクセス 壊れた? 「ファイ...
-
.NETアプリを作ったときの .man...
-
リンクの張り付けかたを教えて...
-
#include <Windows.h>というヘ...
-
jarファイル
-
Seasar2のdiconファイルの読み方
-
Word VBA MSGBOX 内で降順表示
-
監視ツールを入れさせられまし...
-
CSSを1ページに1枚作るのって変...
-
コマンドプロンプトで、指定し...
-
ファイルが開かれているかどう...
-
exeファイルをデータ転送サービ...
-
パイソンでpy ファイルと p...
-
exeファイルの中身を見る方法は...
-
Latexで図番号だけを「図1.1」...
-
参照するファイルをワイルドカ...
-
バッチ処理で追記コピーしたい
おすすめ情報