Từ 1 tới 5 trên tổng số 5 kết quả

Đề tài: Nhập dữ liệu từ txt vào C++ ra các mảng riêng biệt

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

    Mặc định Nhập dữ liệu từ txt vào C++ ra các mảng riêng biệt

    Mình có 1 file txt dữ liệu dòng điện, điện áp các pha A, B, C của rơle mình cần lập trình mô phỏng hoạt động của rơle đó nhưng mà chưa biết cách nhập dữ liệu từ file txt đó như thế nào..
    Dạng của file txt đó như sau:
    Time,IA,IB,IC,IN,VA,VB,VC,VN
    0.000000,-0.165596,3.149487,-3.160250,-0.013795,-70.832344,150.210907,-80.317810,2.262489
    0.000500,-0.706993,3.284836,-2.754202,-0.013795,-87.363831,143.392548,-57.090019,1.861404
    0.001000,-1.248390,3.420186,-2.348155,-0.013795,-103.912758,136.574158,-33.862236,1.477760
    Có 9 cột và trên 1000 dòng (mình có thể điều chỉnh để giảm bớt được số dòng), các cột ngăn cách bởi dấu phẩy, ví dụ cột thời gian Time có giá trị: 0.000000, 0.000500,0.001000… tương tự với các cột kia
    Mình cần chuyển dữ liệu đó vào các mảng riêng rẽ, ví dụ: Time[1000]={0.00000, 0.000005,0.001000…}, IA[1000]={-0.165596,-0.706993,-1.248390…}
    Không biết là phải viết code như thế nào.. Mong các cao nhân chỉ giúp…

  2. #2
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,007

    Trích dẫn Nguyên bản được gửi bởi comeonnow Xem bài viết
    Mình có 1 file txt dữ liệu dòng điện, điện áp các pha A, B, C của rơle mình cần lập trình mô phỏng hoạt động của rơle đó nhưng mà chưa biết cách nhập dữ liệu từ file txt đó như thế nào..
    Dạng của file txt đó như sau:
    Time,IA,IB,IC,IN,VA,VB,VC,VN
    0.000000,-0.165596,3.149487,-3.160250,-0.013795,-70.832344,150.210907,-80.317810,2.262489
    0.000500,-0.706993,3.284836,-2.754202,-0.013795,-87.363831,143.392548,-57.090019,1.861404
    0.001000,-1.248390,3.420186,-2.348155,-0.013795,-103.912758,136.574158,-33.862236,1.477760
    Có 9 cột và trên 1000 dòng (mình có thể điều chỉnh để giảm bớt được số dòng), các cột ngăn cách bởi dấu phẩy, ví dụ cột thời gian Time có giá trị: 0.000000, 0.000500,0.001000… tương tự với các cột kia
    Mình cần chuyển dữ liệu đó vào các mảng riêng rẽ, ví dụ: Time[1000]={0.00000, 0.000005,0.001000…}, IA[1000]={-0.165596,-0.706993,-1.248390…}
    Không biết là phải viết code như thế nào.. Mong các cao nhân chỉ giúp…
    mở file để đọc
    trong khi mà file chưa hết
    {
    ....fscanf(file_handle,"%lf,%lf,%lf",a[i],b[i],c[i]);
    }


    >>>>> mô hình đơn giản như thế thôi,
    cố lên nhé
    ^_,^

    Facebook : https://www.facebook.com/langmaninternet

    Bùi Tấn Quang

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

    Thanks bạn, tối về nhà mình thử viết xem sao ..

  4. #4
    Ngày gia nhập
    01 2013
    Bài viết
    4

    có vấn đề là dòng đầu tiên của file txt đó là chữ : Time, IA... Nên là mình chạy thì nó ra sai.. Ra số lung tung không biết như thế nào..
    Nếu như xóa cái dòng đầu đấy đi thì OK..
    Không biết là có cách nào mà không cần xóa dòng đầu mà vẫn nhập đúng được dữ liệu không nhỉ..

  5. #5
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,007

    Trích dẫn Nguyên bản được gửi bởi comeonnow Xem bài viết
    có vấn đề là dòng đầu tiên của file txt đó là chữ : Time, IA... Nên là mình chạy thì nó ra sai.. Ra số lung tung không biết như thế nào..
    Nếu như xóa cái dòng đầu đấy đi thì OK..
    Không biết là có cách nào mà không cần xóa dòng đầu mà vẫn nhập đúng được dữ liệu không nhỉ..
    Có bác ạ, để bỏ đi siêu dữ liệu nhiều cách lắm

    cách 1 :
    //mở file

    //mở xong thì bỏ qua dòng đầu tiên
    char sieudulieu[100];
    fscanf(p,"%s",sieudulieu);

    //xong thì đọc tiếp data
    ....sau đó làm tiếp như hướng dẫn bên trên


    cách 2
    //mở file

    //bỏ dòng đầu tiên
    char ch=0;
    while(ch!='\n') ch=fgetc(p); // đọc đến khi được xuống dòng, đọc được xuống dòng có nghĩa là bạn đang ở bắt đầu dòng 2 rồi

    //xong thì
    ....sau đó làm tiếp như bình thường


    cách 3: thôi cách 1 là đơn giản nhất rồi
    ^_,^

    Facebook : https://www.facebook.com/langmaninternet

    Bùi Tấn Quang

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

  1. Cho thuê nhà riêng ở ngõ 106 HOÀNG QUỐC VIỆT giá rẻ nhất thị trường Lh;0915.271.079
    Gửi bởi nguyenthuyen107 trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 25-12-2013, 02:22 PM
  2. Bán nhà riêng trong ngõ phố Tây sơn, Đống đa, DT 66m2, @@@ rẻ nhất
    Gửi bởi phungphuc101010 trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 18-11-2013, 12:38 PM
  3. Đề xuất Lập diễn đàn riêng cho người mới nhập môn?
    Gửi bởi Kevin Hoang trong diễn đàn Ý kiến, đề xuất và khiếu nại
    Trả lời: 32
    Bài viết cuối: 07-09-2011, 12:31 PM
  4. Lập trình C Nhập Họ tên và tách nó ra 2 phần họ và tên riêng.
    Gửi bởi drak77 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 16
    Bài viết cuối: 07-12-2010, 03:06 PM
  5. Các nút thêm,sửa,xóa,cập nhật được làm riêng biệt
    Gửi bởi yuno trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 9
    Bài viết cuối: 06-06-2008, 01:16 AM

Tags của đề tài này

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