Solved

text edit and files

Posted on 1998-10-21
5
151 Views
Last Modified: 2013-12-26
How do I read and write strings to and from a number of text edits such as in an address book where you have a first name, last name, and so on to read and write to a file?
0
Comment
Question by:HumanData
  • 2
  • 2
5 Comments
 

Author Comment

by:HumanData
ID: 1291555
Edited text of question
0
 
LVL 10

Expert Comment

by:rbr
ID: 1291556
What is text edit? Can you pls give me more details.
0
 
LVL 3

Expert Comment

by:boonstra
ID: 1291557
The following program does what I think you want:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>

int main(void)
{
      FILE *aFile;
      char name[256],lastname[256],firstname[256];

      /* open file for write */
      aFile = fopen("Test file","w");
      if (NULL==aFile) {
            printf(" cannot open file for write\n");
            return 0;
      }
      
      /* write some strings */
      strcpy(name,"LastName1, FirstName1");
      fprintf(aFile,"%s\n",name);
      
      strcpy(name,"LastName2, FirstName2");
      fprintf(aFile,"%s\n",name);
      
      fclose(aFile);
      
      /* open file for write */
      aFile = fopen("Test file","r");
      if (NULL==aFile) {
            printf(" cannot open file for read\n");
            return 0;
      }
      
      fscanf(aFile,"%255s %255s",lastname,firstname);
      printf("Read string: %s %s\n",lastname,firstname);
      
      fscanf(aFile,"%255s %255s",lastname,firstname);
      printf("Read string: %s %s\n",lastname,firstname);
      
      fclose(aFile);

      return 0;
}

If by "text edit" you mean a TEHandle, then you would get the text from (**te).hText instead of using strcpy.  The text at offset N into a TERec is at (*(**te).hText + N), where te is the TEHandle.
0
 

Author Comment

by:HumanData
ID: 1291558
Please provide answers in C.

By text edit I am meaning a field of text (TEtextBox).
0
 
LVL 3

Accepted Solution

by:
boonstra earned 50 total points
ID: 1291559
A TETextBox can be used to display information, but not for input.  For input you need to use the Dialog or Window Managers and an edit text item.  The following code shows how to read from a file and display in a TETextBox.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>
#include <Windows.h>
#include <TextEdit.h>
#include <Fonts.h>

#define kTextSize 2048

int main(void)
{
      FILE *aFile;
      char name[256],lastname[256],firstname[256];
      WindowPtr wind;
      Rect windRect,box;
      char *text,*p;
      unsigned long theTime;
      
      InitGraf(&qd);
      InitFonts();
      InitWindows();
      
      /* open file for write */
      aFile = fopen("Test file","r");
      
      text = p = NewPtrClear(kTextSize);
      
      /* read some strings */
      fscanf(aFile,"%255s %255s",lastname,firstname);
      strcpy(p,lastname);      p+=strlen(lastname);
      strcpy(p,firstname);      p+=strlen(firstname);
      *p++ = '\r';
      
      fscanf(aFile,"%255s %255s",lastname,firstname);
      strcpy(p,lastname);      p+=strlen(lastname);
      strcpy(p,firstname);      p+=strlen(firstname);
      *p++ = '\r';
      
      /* create window */
      SetRect(&windRect,60,60,360,160);
      wind = NewWindow(nil, &windRect, "\pDemo", true, 0, (WindowPtr)-1, false, 0);
      SetPort(wind);
      
      box = windRect;
      OffsetRect(&box,-windRect.left,-windRect.top);
      InsetRect(&box,10,10);
      TETextBox(text, p-text, &box, teFlushLeft);
      
      while (!Button()) ;      /* wait for click to dismiss */
      
      fclose(aFile);

      return 0;
}

0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
format the code in java 6 109
pre4 challenge 19 110
changeXy challenge 13 93
"Black Box" Testing of Control System Software 2 89
Introduction: Hints for the grid button.  Nested classes, templated collections.  Squash that darned bug! Continuing from the sixth article about sudoku.   Open the project in visual studio. First we will finish with the SUD_SETVALUE messa…
If you use Adobe Reader X it is possible you can't open OLE PDF documents in the standard. The reason is the 'save box mode' in adobe reader X. Many people think the protected Mode of adobe reader x is only to stop the write access. But this fe…
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

713 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question