Công cụ bảo vệ mã nguồn .NET mạnh nhất, không thể unpack, miễn phí cho các khách hàng đầu tiên đăng ký.
Từ 1 tới 10 trên tổng số 10 kết quả

Đề tài: xử lý dữ liệu từ FILE

  1. #1
    Ngày gia nhập
    10 2008
    Bài viết
    4

    Talking xử lý dữ liệu từ FILE

    mình có sẵn 2 file dữ liệu ví dụ như la : phone.dat và customer.dat
    trong 2 file này đã có sẵn các thông tin như là tên khách hàng , số điện thoại , số phút gọi .... 2 tệp này liên hệ với nhau bằng số điện thoại . bi giờ minh có 2 thăc mắc mong các bạn chỉ giúp
    1: làm thế nào để khi duyệt 2 tệp nếu gặp số điện thoại giống nhau thi bắt đầu xử lý 1 cong viec nào đó như tính cước phí chẳng hạn
    2: tệp phone.dat của mình có dạng như sau

    stt sdt số phút gọi miền gọi

    1 8999999 20 nội hạt


    vậy khi xây dựng 1 hàm tính cước lam thế nào để mình có thể lấy dữ liệu từ file phone.dat de xử lý ???

    thank !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

  2. #2
    Ngày gia nhập
    09 2007
    Bài viết
    724

    1 - Bắt buộc bạn phải đọc file lên thôi. rồi duyệt dữ liệu trên file đó. Bạn nên có 1 cấu trúc dữ liệu phù hợp nếu dữ liệu của bạn khá lớn. (nếu cần thiết có thể dùng đến B-Tree).

    2 - Nếu bạn ghi file theo kiểu Binary thì vấn đề thứ 2 được xử lý gọn nhẹ.
    bằng cách bạn tạo ra một Struct tương ứng với dữ liệu của bạn rồi đọc file đó lên bằng hàm fread(....) là được.


    == chúc vui ==

  3. #3
    Ngày gia nhập
    10 2008
    Bài viết
    4

    thank bạn nhiu` . Vấn đề thứ nhất đã ok !
    nhưng vẫn còn 1 chỗ chưa rõ , mong bạn chỉ thêm

    chẳng hạn tệp phone.dat cua minh các dòng như sau

    sdt thoi_gian_goi mien


    8999999 20 Noi_hat


    1: mình đã xây dựng 1 struct riêng , mình có thể khai báo các biến trong cùng 1 hàm fread ko : chẳng hạn : fread(&std,&thoi_gian_goi,&mien, ...........)
    2: nếu mình dùng từng hàm fread(..) 1 để gán cho từng biến thì có phải biến sẽ được gán giá trị lần lượt theo dòng không
    ví dụ như : fread(&std,..) thì biến std=8999999;
    fread(&thoi_gian_goi,....) thì biến thoi_gian_goi=20 ;


    thank!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  4. #4
    Ngày gia nhập
    09 2007
    Bài viết
    724

    C Code:
    1. fread(&std,&thoi_gian_goi,&mien, ...........)
    Thành thật khuyên bạn một câu nhé : Ctrl + F1.
    Nếu đã dùng struct và kiểu binary rồi thì bạn có thể dùng như sau:

    C Code:
    1.  
    2. typedef struct aaa{int a; int b;} Aaa;
    3. void main()
    4. {
    5.      FILE* f;
    6.      f = fopen("Tên file","rb" );
    7.      Aaa a;
    8.      fread(&a,sizeof(Aaa),1,fStream);
    9.      fclose(f);
    10.  
    11.      // in cac gia tri cua a ra
    12.      printf("%d\n",a.a);
    13.      printf("%d\n",a.b);
    14. }

    ps: chữ thank của bạn nhìn phản cảm quá
    Đã được chỉnh sửa lần cuối bởi zkday2686 : 17-10-2008 lúc 11:39 AM.

  5. #5
    Ngày gia nhập
    06 2008
    Bài viết
    25

    Nếu là file text thì đọc như zkday2686 ko dc.

    PHP Code:
    ...
    typedef struct
    {
       
    int sodt;
       
    int thoiGianGoi;
       
    char mien[100];
    SCuocGoi;
    ...
    SCuocGoi cuocGoi;
    fscanf (pFILE"%d %d %s", &cuocGoi.sodt, &cuocGoi.thoiGianGoicuocGoi.mien);
    ... 

  6. #6
    Ngày gia nhập
    09 2006
    Nơi ở
    /usr/share/.hack@
    Bài viết
    1,433

    Mặc định xử lý dữ liệu từ FILE

    được !
    chả vấn đề gì chỉ cần chú ý cái string sao không bị overflow là được
    None!

  7. #7
    Ngày gia nhập
    10 2008
    Bài viết
    4

    sao mình làm thế này ( như bạn zkday2686 nói lại không được nhỉ ?)
    Code:
    #include<stdio.h>
    #include<conio.h>
    typedef struct ten
    {  int stt;
       char name[25];
       long std;
    }phone;
    main()
    {
    
    FILE *p;
    phone dt;
    p=fopen("d:\\phone1.dat","rb");
    while(fread(&dt,sizeof(phone),1,p),!feof(p)){
     printf("stt%d",dt.stt); 
    printf("ten khach hang:%d",dt.name);
    printf("sdt:%d",dt.std);
    
    fclose(p);
    }
    getch();
    }

  8. #8
    Ngày gia nhập
    09 2007
    Bài viết
    724

    Không được như thế nào vậy bạn, bạn mô tả chung chung quá.
    C Code:
    1.  
    2. #include<stdio.h>
    3. #include<conio.h>
    4. typedef struct ten
    5. {  int stt;
    6.    char name[25];
    7.    long std;
    8. }phone;
    9. main()
    10. {
    11.  
    12. FILE *p;
    13. phone dt;
    14. p=fopen("d:\\phone1.dat","rb");
    15. while(fread(&dt,sizeof(phone),1,p),!feof(p)){
    16.  printf("stt%d",dt.stt);
    17. printf("ten khach hang:%d",dt.name);
    18. printf("sdt:%d",dt.std);
    19.  
    20. //fclose(p); đưa fclose ra ngoài vòng lặp.
    21. }
    22.  
    23. fclose(p);
    24. getch();
    25. }

  9. #9
    Ngày gia nhập
    10 2008
    Bài viết
    4

    khi chạy nó cứ đen thui chứ chả in cai ji ra màn hình cả ! (đã đưa hàm fclose ra ngoài vòng while)
    tệp dữ liệu của mình như thế này nè :
    1 nguyen van a 8999999;
    2 nguyen van b 8555555;
    .. .................. ...........;
    .. .................. ...........;
    ..

  10. #10
    Ngày gia nhập
    09 2006
    Nơi ở
    /usr/share/.hack@
    Bài viết
    1,433

    1)
    C++ Code:
    1. printf("ten khach hang:%d",dt.name); // <--- %d hay là %s

    2)
    C++ Code:
    1. typedef struct ten
    2. {  int stt;
    3.    char name[25];
    4.    long std;
    5. }phone;
    6.  
    7. while(fread(&dt,sizeof(phone),1,p),!feof(p)){

    dữ liệu
    Code:
    1 nguyen van a 8999999;
    2 nguyen van b 8555555;
    thế hỏi phát: nó đọc chuỗi name rồi kết thúc thế nào?
    ghi chú:
    C++ Code:
    1. char name[25];
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.
    None!

Các đề tài tương tự

  1. Cách add file thư viện dll vào file exe để tạo một file chạy duy nhất C#
    Gửi bởi nthung2112 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 20
    Bài viết cuối: 01-09-2012, 10:01 AM
  2. File backup .bak có dung lương lớn hơn file .mdb và file log
    Gửi bởi MYNAM trong diễn đàn Thắc mắc Microsoft SQL Server & Microsoft Access
    Trả lời: 4
    Bài viết cuối: 27-07-2012, 12:59 PM
  3. Giới thiệu cách chuyển File Ảnh thành file Video trong download proshow gold
    Gửi bởi thuhu0900x trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 3
    Bài viết cuối: 03-07-2012, 03:54 AM
  4. Đọc dữ liệu file midi dạng số HEX và lấy lời nhạc trong file ra file text
    Gửi bởi kimngockhtn_2007 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 29-06-2011, 04:40 PM
  5. Trả lời: 17
    Bài viết cuối: 23-05-2011, 11:47 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn