1. 程式人生 > >關於用檔案隨機讀寫

關於用檔案隨機讀寫

 //---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include<stdio.h>//要加入哦
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
struct rdata
{
   char name[10];
   char score1[4];
   char score2[4];
   char score3[4];
   char score4[4];

} student;


void __fastcall TForm1::Button1Click(TObject *Sender)
{
  //建立隨機檔案,
  FILE *fp;
  fp=fopen(".//randomfile.ran","wb");   //這裡的wb是關鍵
  strcpy(student.name,Label1->Caption.c_str());
  strcpy(student.score1,Label2->Caption.c_str());
  strcpy(student.score2,Label3->Caption.c_str());
  strcpy(student.score3,Label4->Caption.c_str());
  strcpy(student.score4,Label5->Caption.c_str());
  fwrite(&student,sizeof(rdata),1,fp);
 // fprintf(fp,"/n");
  strcpy(student.name,Label6->Caption.c_str());
  strcpy(student.score1,Label7->Caption.c_str());
  strcpy(student.score2,Label8->Caption.c_str());
  strcpy(student.score3,Label9->Caption.c_str());
  strcpy(student.score4,Label10->Caption.c_str());
  fwrite(&student,sizeof(rdata),1,fp);
  fclose(fp);

}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
  FILE *fp;
  fp=fopen(".//randomfile.ran","rb");
  long pos=(StrToInt(Edit1->Text)-1)*sizeof(rdata);
  fseek(fp,pos,0);
  fread(&student,sizeof(rdata),1,fp);
  AnsiString aStr;
  aStr.sprintf("%s,/t%s,/t%s,/t%s,/t%s/n",student.name,student.score1,student.score2,student.score3,student.score4);
  Memo1->Lines->Text=aStr;

 // Memo1->Lines->Text=student.score2;
  fclose(fp);
}
//---------------------------------------------------------------------------

相關推薦

關於檔案隨機

 //--------------------------------------------------------------------------- #include <vcl.h>#pragma hdrstop#include<stdio.h>

Java 檔案隨機流 RandomAccessFile

一.簡述 1、是JAVA I/O流體系中功能最豐富的檔案內容訪問類,它提供了眾多方法來訪問檔案內容。 2、由於可以自由訪問檔案的任意位置,所以如果需要訪問檔案的部分內容,RandomAccessFile將是更好的選擇。 3、可以用來訪問儲存資料記錄的檔案,檔案的記錄的大

Java 實現檔案隨機-RandomAccessFile

1.介紹 現有如下的一個需求,向已存在1G資料的txt文本里末尾追加一行文字,內容如下“Lucene是一款非常優秀的全文檢索庫”。可能大多數朋友會覺得這個需求很easy,說實話,確實easy,然後XXX君開始實現了,直接使用Java中的流讀取了txt文本里原來

從零開始學C++之IO流類庫(三):檔案、二進位制檔案檔案隨機

#include <cassert>#include <iostream>#include <fstream>#include <string>using namespace std;struct Test {     int a;     int b; };i

Linux下root許可權新增使用者,並給使用者或使用者組指定目錄的許可權(比如:tomcat檔案許可權,可以用於新使用者部署專案)

目的: 在linux環境中為了安全起見,不能讓所有專案都用root部署(防止root許可權過大,對重要檔案的誤操作),所以新加使用者或使用者組,對新使用者或使用者組授予部分檔案操作的許可權。 1.建立使用者newuser,並設定密碼(預設連帶建立newuser組) # useradd n

C語言檔案隨機

C語言檔案的隨機讀寫 檔案順序讀寫,即讀寫檔案只能從頭開始,依次讀寫各個資料。但在實際開發中經常需要讀寫檔案的中間部分,要解決這個問題,就得先移動檔案內部的位置指標,再進行讀寫。這種讀寫方式稱為隨機讀寫,也就是說從檔案的任意位置開始讀寫。 實現隨機讀寫的關鍵是要按要求移動位置指標,這稱為

java中的隨機檔案RandomAccessFile

java中的隨機讀寫檔案: RandomAccessFile raf = new RandomAccessFile(“test.dat”,“rw”); 1.raf.write();這個方法是寫入檔案一個位元組    raf.read();這個方法是讀取檔案一個位

Java 檔案IO隨機RandomAccessFile

目錄 前言 RandomAccessFile優勢: 新增 任意位置插入 擴充套件 前言 在一個文字檔案的結尾新增一些資料,仔細一聽。這個問題很是簡單。先把資料讀出來,然後再修改讀出的資料,再把它寫進檔案。咋一看,還真是那麼簡單。但是如果檔案由1個G大小,勉

C語言隨機資料檔案(二)

int fseek(FILE * fp, long offset, int fromWhere):設定檔案位置標記,方法引數說明: fp:FILE型別指標,該指標對應的檔案即是檔案位置標記所標記的檔案; offset:偏移量; fromWhere:偏移起始點,其值可以為SEEK_SET、SEEK

C語言隨機資料檔案(一)

void rewind(FILE * fp):將檔案位置標記重新指向檔案開頭,該函式沒有返回值; 【例子】計算機D盤根目錄有一個存放學生資訊的stud.dat檔案,請先講檔案資訊顯示在控制檯,然後在將資料複製到F盤stud.dat檔案中。 #include <stdio.h> #

綜合應用題:多執行緒複製檔案(知識點:多執行緒、隨機流)

要求:使用多執行緒複製一個檔案(使用多執行緒複製一個檔案可以加快檔案的複製速度) 程式碼: package 多執行緒複製檔案; import java.io.File; import java.io.FileNotFoundException; impor

RandomAccessFile隨機檔案操作類講解

private FileAccessI fileAccessI; private File file = null; private int lstart = 0; String dirName = ""; System.out.println("下載時接收到的內容:" + new String(byt

Java 檔案隨機

Java.io 包提供了 RandomAccessFile 類用於隨機檔案的建立和訪問。使用這個類,可以跳轉到檔案的任意位置讀寫資料。程式可以在隨機檔案中插入資料,而不會破壞該檔案的其他資料。此外,程式也可以更新或刪除先前儲存的資料,而不用重寫整個檔案。 RandomAcc

「python」檔案隨機

檔案的隨機讀寫 獲取當前讀寫的位置 在讀寫檔案的過程中,如果想知道當前的位置,可以使用tell()來獲取 # 開啟一個已經存在的檔案 f = open("test.txt", "

Java IO流之普通檔案流和隨機流區別

普通檔案流和隨機讀寫流區別 FileInputStream和FileOutputStream FileReader和FileWriter RandomAccessFile 兩者區別:

Java IO操作——簡單瞭解RandomAccessFile隨機檔案操作類的使用

學習目標 掌握RandomAccessFile類的作用 可以使用RandomAccessFile讀取指定位置的資料 RandomAccessFile類的主要功能是完成隨機讀取功能,可以讀取指定位置的

關於 Delphi 中流的使用(2) TFileStream(檔案流)

TStream 是一個抽象的基類, 不能直接生成物件. 在具體的應用中, 主要使用它的子孫類: TFileStream: 檔案流 TStringStream: 字串流 TMemoryStream: 記憶體流 TResourceStream: 資原始檔流 THandleStream: 是 TFileStrea

C++語言基礎 例程 檔案隨機

示例:寫到尾再從頭讀#include <iostream> #include <fstream> #include <cstdlib> using namespace std; int main( ) { int a[10], b[

Qt:Dom方式xml檔案

  網上有不少介紹Dom方式讀寫xml檔案,大部分給出的程式碼都不夠完整。這裡通過我做的的一個例子做一個完整的總結。XML檔案格式如下 <?xml version="1.0" encoding="UTF-8"?> <RootSkeletonData>

C 文件隨機

stop eat 取出 指針 偏移 inpu fopen oid ont 1 #include <stdio.h> 2 #include <stdlib.h> 3 4 void eatline(){ 5 while(getc