home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / pp / pp-6.0 / Tools / bin2hex / bin2hex.c next >
Encoding:
C/C++ Source or Header  |  1991-12-18  |  1009 b   |  69 lines

  1. /* bin2hex: Converts a binary file to hex */
  2.  
  3. # ifndef lint
  4. static char Rcsid[] = "@(#)$Header: /xtel/pp/pp-beta/Tools/bin2hex/RCS/bin2hex.c,v 6.0 1991/12/18 20:28:39 jpo Rel $";
  5. # endif
  6.  
  7. /*
  8.  * $Header: /xtel/pp/pp-beta/Tools/bin2hex/RCS/bin2hex.c,v 6.0 1991/12/18 20:28:39 jpo Rel $
  9.  *
  10.  * $Log: bin2hex.c,v $
  11.  * Revision 6.0  1991/12/18  20:28:39  jpo
  12.  * Release 6.0
  13.  *
  14.  */
  15.  
  16.  
  17.  
  18. #include <stdio.h>
  19.  
  20.  
  21.  
  22.  
  23. /* ---------------------  Begin  Routines  -------------------------------- */
  24.  
  25.  
  26. main(argc, argv)
  27. int argc;
  28. char **argv;
  29. {
  30.     if (argc > 1) {
  31.         while (--argc > 0) {
  32.             FILE *fp;
  33.  
  34.             if ((fp = fopen (*++argv, "r")) == NULL) {
  35.                 fprintf (stderr, "Can't open file %s", *argv);
  36.                 perror("");
  37.                 exit (1);
  38.             }
  39.             bin2hex (fp);
  40.             (void) fclose (fp);
  41.         }
  42.     }
  43.     else
  44.         bin2hex (stdin);
  45.  
  46. }
  47.  
  48. bin2hex (fp)
  49. FILE *fp;
  50. {
  51.     int zone, fold;
  52.  
  53.     fold = 0;
  54.  
  55.     while ((zone = getc(fp)) != EOF) {
  56.  
  57.         fold += 3;
  58.  
  59.         if (fold > 80) {
  60.             putchar ('\n');
  61.             fold = 3;
  62.         }
  63.  
  64.         printf ("%02x ", zone);    
  65.     }
  66.     if (fold)
  67.         putchar ('\n');
  68. }
  69.