home *** CD-ROM | disk | FTP | other *** search
/ Hacker Chronicles 2 (Alt) / The_Hacker_Chronicles_Volume_II-CD1.iso / hack / mish41.txt < prev    next >
Encoding:
Text File  |  1992-03-04  |  5.3 KB  |  148 lines

  1. =======================================
  2. =                                     =
  3. =      HP 2000 PART 4 (FILES)         =
  4. =                                     =
  5. =             CAPTURED BY             =
  6. =                                     =
  7. =      BLITZIOD ?? & GALACTUS **      =
  8. =                                     =
  9. =                 of                  =
  10. =                                     =
  11. =       THE ELITE HACKERS GUILD       =
  12. =                                     =
  13. =======================================
  14.  
  15.  
  16. * FILES *
  17.  
  18.  
  19.  
  20. BASIC FORMATTED FILES ARE ESSENTIALLY THE SAME AS
  21. DATA STATEMENTS, THEY BOTH HAVE POINTERS THAT MOVE ALONG THE DATA
  22. HERE IS AN EXAMPLE OF A PROGRAM USING THE DATA STATEMENT    :
  23.  
  24. 10 READ X
  25. 20 PRINT X
  26. 30 DATA 1,2,3,4,5,6,7,8,9,10
  27. 40 GOTO 10
  28. 50 END
  29.  
  30.  
  31. WHEN THIS PROGRAM IS RUN THE DATA IS READ IN LINE 10
  32. FROM THE DATA STATEMENT IN LINE 30.
  33. AFTER THE '1' IS READ FROM THE DATA STATEMENT THE POINTER IS
  34. MOVED TO THE '2' AND SO ON.  WHEN THE FINAL PIECE OF DATA IS READ
  35. AND THE POINTER IS MOVED BEYOND THE '10' THEN YOU WILL GET THE
  36. ERROR MESSAGE:      OUT OF DATA IN LINE 10       
  37. THIS IS ESSENTIALLY THE WAY FILES WORK.
  38. BUT FILES HAVE MANY MORE CAPABILITIES THAN DO DATA STATEMENTS
  39.  
  40.  
  41. LET'S LEARN HOW TO CREATE A FILE, OK?
  42.  
  43.  
  44. TO CREATE A FILE ALL ONE MUST DO IS TYPE IN CRE- THEN THE
  45. NAME OF THE FILE, AND HOW LONG IT MUST BE.  FOR EXAMPLE IF I WANTED
  46. TO CREATE A FILE NAMED 'DAVID' THAT IS 5 RECORDS LONG I WOULD TYPE IN
  47. CRE-DAVID,5
  48. THEN HIT 'RETURN'
  49.  
  50. WHENEVER YOU CREATE A FILE THE COMPUTER RESERVES THE NUMBER OF
  51. RECORDS YOU CREATED IT ON THE DISC.  SO IF YOU CREATE A FILE THAT
  52. IS 50 RECORDS LONG, YOU HAVE USED 50 RECORDS OF DISC SPACE, WHETHER
  53. YOU USE THE WHOLE FILE OR NOT.
  54.  
  55. NOW I WILL SHOW YOU A PROGRAM THAT WILL PRINT ON YOUR FILE.
  56.  
  57.  
  58.  
  59.  5 DIM A$(20), B$(20)
  60. 10 FILES FIL1
  61. 20 PRINT 'NAME';
  62. 30 INPUT A$
  63. 40 IF END#1 THEN 85
  64. 50 READ#1,1
  65. 60 READ#1;B$
  66. 70 GOTO 60
  67. 85 IF END#1 THEN 110
  68. 90 PRINT#1;A$,END
  69. 100 STOP
  70. 110 PRINT'FILE FULL'
  71. 120 END
  72.  
  73.  
  74.  
  75.  
  76. BY THIS TIME YOU ARE WONDERING WHAT THAT MESS IS, RIGHT ?
  77. HERE IS AN EXPLANATION  
  78.  
  79.  
  80. STATEMENT #                       MEANING
  81. 10          OPENS THE FILE THAT IS TO BE USED, IN THIS CASE THE NAME OF
  82.             THE FILE IS 'FIL1'.  THIS STATEMENT IS TELLING THE COMPUTER
  83.             WHAT FILE WE WANT TO USE FOR THIS PROGRAM
  84.             FIL1 IS REFERRED TO AS #1 AS SEEN IN LINES 40,50 & 60
  85.             IF MORE THAN ONE FILE WAS USED LINE 10 WOULD LOOK LIKE
  86.             THIS  FILES FIL1,FIL2.  THEN FIL2 WOULD BE REFERRED
  87.             TO AS #2.  UP TO 16 FILES CAN BE USED IN ONE PROGRAM
  88. 30          INPUT NEW NAME TO BE PRINTED ON FILE.
  89. 40          THIS STATEMENT 'IF END' SETS UP THE IF END 
  90.             CONDITION.  THIS MEANS THAT WHEN THE FILE PIONTER GETS
  91.             TO THE END OF  DATA IN THAT FILE THEN GOTO 85
  92. 50          THIS MEANS TO READ THE FIRST RECORD AND THE
  93.             FIRST ITEM OF THE FILE, IN OTHER WORDS THIS
  94.             THIS SETS THE FILE POINTER BACK TO THE BEGINNING OF THE
  95.             DATA.
  96.             BY USING THIS STATEMENT YOU CAN BE ASSURED OF STARTING
  97.             AT THE BEGINNING OF THE DATA IN THAT FILE
  98. 60          READS DATA FROM FILE#1, SOMEWHAT LIKE THE 'READ' USED
  99.             WITH DATA STATEMENTS.
  100. 85          SETS UP ANOTHER IF END CONDITION TO CHECK FOR THE END OF
  101.             FILE.  IF ANOTHER EOF MARKER IS ECOUNTERED THEN GOTO
  102.             LINE 110.
  103.             END-OF-FILE MARKERS ARE DEFINED MORE PRECISELY LATER.
  104. 90          THIS STATEMENT PRINTS THE NEW NAME (A$) ON THE FILE,
  105.             THEN PRINTS AN END OF FILE MARKER ON THE FILE.
  106.             THE END OF FILE MARKER ENABLES THE COMPUTER TO TELL
  107.             THROUGH THE READ STATEMENT (LINE 60) WHEN THE END OF
  108.             DATA IS REACHED
  109.  
  110.  
  111.  
  112. HERE IS A FLOW CHART OF THAT PROGRAM:
  113.  
  114. 1.  INPUT NEW NAME -----------2.  READ DATA FROM FILE
  115.  
  116. 3.  IF END OF FILE #1 THEN 4 -----GO BACK TO 2.
  117.                                  !
  118.                     4.  IF END#1 THEN 7
  119.                                  !
  120. 5.  TRY TO PRINT NEW NAME ON FILE, IF SUCCESSFUL (MEANING FILE IS
  121.     NOT FULL) THEN 6.  IF UNSECCESSFUL (MEANING FILE IS FULL) THEN 7.
  122.                                  !                            !
  123.                                                               !
  124.                                  !            7.  PRINT'FILE FULL'
  125.                              6.  STOP                         !
  126.                                                           8. END
  127.  
  128.  
  129. OK, LET'S MOVE ON TO GET A LISTING OF YOUR FILE
  130.  
  131. 05 DIM A$(20)
  132. 10 FILES FIL1
  133. 20 IF END#1 THEN 70
  134. 30 READ#1,1
  135. 40 READ#1;A$
  136. 50 PRINT A$
  137. 60 GOTO 40
  138. 70 END
  139.  
  140.  
  141. THIS IS A RATHER SIMPLE PROGRAM, IT GOES LIKE THIS;
  142. YOU SET UP THE IF END CONDITION, THEN READ STARTING AT THE
  143. BEGINNING OF THE FILE.  READ THROUGH THE FILE AND PRINT
  144. EACH SEPARATE PIECE OF DATA (LINES 40 & 50). WHEN ALL THE
  145. DATA HAS BEEN READ THROUGH, IT FALLS THROUGH TO LINE 70, BY
  146. THE CONDITION SET UP IN LINE #20 AND AT THIS POINT
  147. EXECUTION IS TERMINATED.
  148.  
  149.  
  150.  
  151. *  END OF FILE DISCUSSION  *
  152.  
  153.  
  154.  
  155. HERE IS SOME ELLABORATION ON WHAT YOU HAVE LEARNED SO FAR
  156. ABOUT BASIC FORMATTED FILES.
  157.  
  158.  THE EOF MARKER IS WHAT THE IF END CONDITION IS USED 
  159. WITH.  THE EOF MARKER DESIGNATES THAT THE END OF DATA HAS BEEN REACHED.
  160. AS MORE DATA IS PUT INTO A FILE.