DAT ファイルを100個ほど、できるだけ簡単な操作でアクセスに読み込みたいです。
100個を1個にしてからがよいのでしょうか。

まとめるのは、DOSとかで、するのでしょうか。

エクセルのように、アクセスで読み込み、活用できるでしょうか。

このQ&Aに関連する最新のQ&A

datファイル」に関するQ&A: .datファイルとは

A 回答 (1件)

拡張子がDATと記述なさっておられますが、内容は作成したソフトによります。



DOSプロンプト上で「TYPEコマンド」で内容が正確に表示されるのであれば
COPYコマンドで一まとめにできます。

nishimawaさんのDATファイルがテキストならば、あとあとの作業を考えて
拡張子TXTにするのが簡単でしょうね。

>COPY *.DAT NANTOKA.TXT とすれば一つのテキストファイルにまとめられます。
(名前の順で並ぶはず)

そうなればEXCELなりACCESSなりで活用可能です。
    • good
    • 0
この回答へのお礼

ありがとうございました。

助かります。

お礼日時:2001/12/01 23:23

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QSSI - SSIで読み込んだファイルにさらにSSIの

Qシェルでファイルを読み込む

こんにちわ。ちょっと今つまっていることがあるので質問させていただきます。

現在、PL/SQLで作成したセレクト文のテーブルと主キーをシェルを使いファイルから引数を読み出す、ということをやりたいと考えています。

また、テーブルは12、主キーは膨大な数なので引数を定数にするとあまりにも時間がかかってしまうので、ファイルから読み込めば(元になるファイルはある)シェルの中でごちゃごちゃやらなくてもいいと考えたのですが、ファイルを読み込むというところで詰まってしまっています。

なお、ファイルは
テーブル名 主キー
test_01 20061017
test_02 20061018

というようになっています。

どなたかよい方法を教えてもらえないでしょうか?
以上、よろしくお願いします。

Aベストアンサー

bsh系なら
while read table primary; do
なんかする
done < filename
でいけるかなぁ? csh系はこの辺の扱いが弱いので難しいと思うけど.

Q最も速いデータ読込は?

今、VisualStudio 2005 C#でデータを読み込んで、グラフにプロットするプログラムを組んでいます。読み込むデータは1行が16項目のテキストファイルです。プロットまでの手順は以下のようになっています。

------------------------------------------------------
(1)予めテキストデータを全て行単位で配列に格納しておく
(2)プロットするデータの条件を決定(任意)
(3)プロット処理開始(ボタンクリックイベント)
(4)1行目から最終行まで探索し、
 条件と一致するデータが見つかれば、行データを分割して対象データを描画
------------------------------------------------------

現状では、ボタンクリックイベントである(3)、(4)の処理に数分間掛かってしまいます。予め配列に格納すれば、(ボタンクリックイベントの際の)ハードディスクへのアクセス時間が短縮されると考え、このようなアルゴリズムを組んだのですが、より効率の良い方法があれば教えて頂けないでしょうか。
よろしくお願いします。

今、VisualStudio 2005 C#でデータを読み込んで、グラフにプロットするプログラムを組んでいます。読み込むデータは1行が16項目のテキストファイルです。プロットまでの手順は以下のようになっています。

------------------------------------------------------
(1)予めテキストデータを全て行単位で配列に格納しておく
(2)プロットするデータの条件を決定(任意)
(3)プロット処理開始(ボタンクリックイベント)
(4)1行目から最終行まで探索し、
 条件と一致するデータが見つかれば、行データを分割...続きを読む

Aベストアンサー

>(4)1行目から最終行まで探索し、
いわゆるシーケンシャルサーチのようですが
10万行あれば10万回の検索が発生し
条件が100個あるとするなら1000万回の比較が発生しますよね?
2分探索を使えばLog2(10万)=16.6
つまり17 * 100 = 1700回の比較で済みます。

(1)予めテキストデータを全て行単位で配列に格納しておく
(2)プロットするデータの条件を決定(任意)
(3)配列のデータをソート
(4)プロット処置開始
(5)2分探索で目的のデータを検索
(6)一致するものがあれば描画

あと6(描画)はネックにはなっていませんか?
もしボトルネックになっているとするなら毎回描画するのではなく
バックサーフェースを作り(System.Drawing.Graphicsを別に作成)
そこで全てを描画しきってから
Graphics.DrawImageで転送すると速くなるでしょう。

ボトルネックを調べるにはQueryPerformanceCounterを使ってください。
その処理に何クロックかかっているかがわかります。
http://www.divakk.co.jp/aoyagi/csharp_tips_tracetime.html

>(4)1行目から最終行まで探索し、
いわゆるシーケンシャルサーチのようですが
10万行あれば10万回の検索が発生し
条件が100個あるとするなら1000万回の比較が発生しますよね?
2分探索を使えばLog2(10万)=16.6
つまり17 * 100 = 1700回の比較で済みます。

(1)予めテキストデータを全て行単位で配列に格納しておく
(2)プロットするデータの条件を決定(任意)
(3)配列のデータをソート
(4)プロット処置開始
(5)2分探索で目的のデータを検索
(6)一致するものがあれば描画

あと6(描画)はネックには...続きを読む

QDirectXでのicoファイル読み込み

今デスクトップアクセサリのような物を作成しています
作成中、DirectXでのicoファイル読み込みの部分で躓いています。
icoファイルの画像をテクスチャとして読む込む方法を教えてもらえないでしょうか?

Aベストアンサー

 こんばんは。

 アイコンを取り込んで容易にテクスチャ化する事は無理な様です。ピクセルを複写していく原始的なやり方が必要です。
 LoadImage()でアイコンを読み込んで、そのイメージデータに基づいてテクスチャに書き込んでいきます。
 アイコンがマスクイメージも所有している場合は、マスクデータに基づいて、テクスチャのアルファチャンネルへ書き込まないといけません。、
 口で説明しきれる程、短絡的な事では無いので、取り合えず以下参考に。

struct CIcon2Texture
{
enum { COLOR = 0, MASK = 1, TOTAL = 3 };

LPDIRECT3DTEXTURE9 CreateTextureFromIcon(LPDIRECT3DDEVICE9 pDevice, LPCSTR pszName/*アイコンファイル名*/)
{
//アイコンのロード
HICON hIcon = static_cast<HICON>(::LoadImage(::GetModuleHandle(NULL), pszName, IMAGE_ICON, 0, 0, LR_LOADFROMFILE));
LPDIRECT3DTEXTURE9 pd3dtex9 = this->CreateTextureFromIcon(pDevice, hIcon);
::DeleteObject(hIcon);
return pd3dtex9;
}

LPDIRECT3DTEXTURE9 CreateTextureFromIcon(LPDIRECT3DDEVICE9 pDevice, HICON hIcon/*アイコンハンドル*/)
{
//アイコンのデータを記録する
this->GetObject(hIcon);

LPDIRECT3DTEXTURE9 pTexture = 0;
LPDIRECT3DSURFACE9 pSurface = 0;

//アルファチャンネル付き32ビットテクスチャの作成
::D3DXCreateTexture(pDevice, bmp[COLOR].bmWidth, bmp[COLOR].bmHeight, 1, D3DUSAGE_DYNAMIC, D3DFMT_A8R8G8B8, D3DPOOL_DEFAULT, &pTexture);

if(!pTexture)
return 0;

pTexture->GetSurfaceLevel(0, &pSurface);
if(!pSurface)
return 0;

this->PixelCopy(pSurface);
return pTexture;
}

private:
//アイコンリソースに基づいて、テクスチャサーフェースにピクセルをセットする
void PixelCopy(LPDIRECT3DSURFACE9 pSurface)
{
D3DLOCKED_RECT rc;

//サーフェースをロックする
pSurface->LockRect(&rc, NULL, 0);

//アイコンイメージ用のHDCを作成する
HDC hDCIcon = ::CreateCompatibleDC(NULL);

//逆転しているので高さの最大からスタートする
for(int y = bmp[COLOR].bmHeight - 1; y >= 0 ; --y)
{
for(int x = 0; x < bmp[COLOR].bmWidth; ++x)
{
//32ビット前提でアクセスするポジションを計算する
const int pos = (rc.Pitch * y) + (x * 4);
LPDWORD pdw = reinterpret_cast<LPDWORD>
(
static_cast<LPBYTE>(rc.pBits) + pos
);

//アイコンイメージを選択
::SelectObject(hDCIcon, ici.hbmColor);

//色彩をサーフェースに書き込む
*pdw = ::GetPixel(hDCIcon, x, y);

//マスクイメージが無ければ引き返す
if(!ici.hbmMask)continue;

//マスクイメージを選択
::SelectObject(hDCIcon, ici.hbmMask);

//マスク値をサーフェースに書き込む
*pdw |= ::GetPixel(hDCIcon, x, y) == 0 ? 0x0 : 0xff;
}
}

//開放
pSurface->UnlockRect();
::DeleteDC(hDCIcon);
}

void GetObject(HICON hIcon)
{
::GetIconInfo(hIcon, &ici);
::GetObject(ici.hbmColor, sizeof(BITMAP), &bmp[COLOR]);
::GetObject(ici.hbmMask, sizeof(BITMAP), &bmp[MASK]);
}

ICONINFOici;
BITMAPbmp[TOTAL];
};

 こんばんは。

 アイコンを取り込んで容易にテクスチャ化する事は無理な様です。ピクセルを複写していく原始的なやり方が必要です。
 LoadImage()でアイコンを読み込んで、そのイメージデータに基づいてテクスチャに書き込んでいきます。
 アイコンがマスクイメージも所有している場合は、マスクデータに基づいて、テクスチャのアルファチャンネルへ書き込まないといけません。、
 口で説明しきれる程、短絡的な事では無いので、取り合えず以下参考に。

struct CIcon2Texture
{
enum { COLOR = 0,...続きを読む

Qバッチでファイルの読み込み

Windowsバッチでファイルの読み込みをしようと思っているのですが、
下記コマンドの実行で「ファイルが見つかりません」となります。
※パスにスペースを含むのでusebackqを使用しました。

FOR /F "usebackq tokens=1,2 delims= " %%i in ("c:\temp 1\data.txt") DO echo %%i

WindowsServer2003でうまくいかなかったのですが、
Xpですれば問題なくファイルを読み込めました。
何か差があるのでしょうか?

Aベストアンサー

バッチ自体には問題ないように見えますね。
アクセス権の関係ということはないですか?
読み込み権限が無いユーザーで実行した場合もファイルが見つからないと言われるようですが・・・


人気Q&Aランキング

おすすめ情報