本人是新手 正在练手  需要实现的功能 是添加 修改 删除 保存  就光连TXT就可以  求高手提供一个思路和流程~ 谢谢了!

解决方案 »

  1.   

    去下一个读写TXT文件的例子。比较容易入手
      

  2.   

    就是准备写一个TXT文件的数据库的连接已经学会了
      

  3.   

    http://www.vckbase.com/code/filesys/file/note.zip
      

  4.   

    上codeproject上搜 好多例子 下一个慢慢研究
      

  5.   

    具有上传、下载的超强功能的通讯录:(两个类)
    // CToDo.h
    #ifndef __CTODO_H__
    #define __CTODO_H__
    #include <e32base.h>
    #include <e32std.h>
    #include <e32cons.h> 
    #include <s32file.h>
    #include <f32file.h>
    class CToDo : public CBase
    {
    public:
    enum TPriority {
    EHigh,
    EMedium,
    ELow
    };
    enum TAlarm {
    ENo,
    EOff
    };
    public:
    static CToDo* NewLC();
    static CToDo* NewL();

    static CToDo* NewLC(const TDesC& aSubject, 
    const TDesC& aComments,
    const TDesC& aLocation,
    const TDateTime& aDate, 
    const TDateTime& aTime,  
    const TDesC& aPerson, 
    TUint16 aAlarm,
    TUint16 aPriority );
    static CToDo* NewL(const TDesC& aSubject, 
    const TDesC& aComments,
    const TDesC& aLocation, 
    const TDateTime& aDate, 
    const TDateTime& aTime, 
    const TDesC& aPerson, 
    TUint16 aAlarm,
    TUint16 aPriority );public:
    const TDesC& Subject() const { return *iSubject; }
    TPriority& Priority()  { return iPriority; }
    TAlarm& Alarm()  { return iAlarm; }
    TDateTime& Date1();
    TDateTime& Date2();
    TDesC& Person();
    HBufC* Comments() { return iComments; }

    void Setsubject(const TDesC& aSubject);
    void SetPriority(enum TPriority aPriority);
    void SetPerson(const TDesC& aPerson);
    void SetDate1(TInt aYear,TMonth aMonth,TInt aDay,TInt aHour,TInt aMinute, TInt aSecond,TInt aMicroSecond);
    void SetCommentsL(const TDesC& aComments); static TBool Match(const CToDo& aTodo1, const CToDo& aToDo2);
    static TInt ComparePrioritiesDec(const CToDo& aTodo1, const CToDo& aToDo2);
    static TInt ComparePrioritiesAsc(const CToDo& aTodo1, const CToDo& aToDo2);public:
    void ExternalizeL( RWriteStream& aStream ) const;
    void InternalizeL( RReadStream& aStream );protected:
    CToDo();
    CToDo(const TDesC& aSubject, 
    const TDesC& aLocation, 
    const TDesC& aComments,
    const TDateTime& aDate, 
    const TDateTime& aTime, 
    const TDesC& aPerson, 
    TUint16 aAlarm,
    TUint16 aPriority );
    void ConstructL();private:
    HBufC* iSubject;
    HBufC* iLocation;
    HBufC* iComments;
    TBufC<20> iPerson; TDateTime iDate1;
    TDateTime iDate2; TAlarm  iAlarm;
    TPriority iPriority;
    };#endif
    //CToDoList.h#ifndef __CTODOLIST_H__
    #define __CTODOLIST_H__
    #include "CTodo.h"
    #include <e32base.h>
    #include <e32std.h>
    #include <e32cons.h> class CToDoList : public CBase
    {
    public:
    static CToDoList* NewLC();
    static CToDoList* NewL();public:
    TInt Count() const;
    void AddToDoL( CToDo* aToDo );
    void InsertL(TInt aIndex, CToDo* aToDo );
    void RemoveToDo( TInt aIndex );
    TInt Find(const CToDo* aToDo ) const;
    CToDo* At( TInt aIndex );
    void Sort(TBool aDec = EFalse);
    void Reset(); CToDo* operator[](const TInt aIndex);
    const CToDo* operator[](const TInt aIndex) const;public:
    void ExternalizeL( RWriteStream& aStream ) const;
    void InternalizeL( RReadStream& aStream );protected:
    CToDoList();
    void ConstructL();
    ~CToDoList();private:
    RPointerArray<CToDo> iArray; // RPointerArray<CToDo> 
    };#endif
      

  6.   

    这个思路还不简单?将你的通讯录内容按一定的格式写入TXT文件。读的时候按一定的格式读出。
    其中单条记录的不同字段可以以特殊符号隔开。不同记录可以以换行区分。保存的的时候重写一下文件就可以了。这样做适合记录不多的情况。要是几万几 十万条记录就慢了。
    另外你也可以考虑用BCD码保存。这样少50%的存储空间。