Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 230
  • Last Modified:

Convert file

hai..

can we convert the file which contains hex / character / base64 format into text format that can be read. Assume that i have this line of hex formated:

00 02 FF 0F 47 5F

after convert i got this text "Hello". Can we do that?

Thanks,

Suhaimi
0
suhai
Asked:
suhai
  • 2
  • 2
  • 2
1 Solution
 
ozoCommented:
Are you sure that
00 02 FF 0F 47 5F
converts into "Hello"?  How did you convert it?
what format is this supposed to be?  hex, or character, or base64?
0
 
GrailmanCommented:
"can we convert the file ... into text format that can be read"
I don't understand since this is how we read text files. Opening a file with the binary values 48 45 4C 4C 4F will give the text "HELLO". Do you mean you want to open a text file with the text "48 45 4C 4C 4F" and have it convert the three chars "48 " into one char "H"?

0
 
suhaiAuthor Commented:
Yes grailman,  you've got my point. Do you have any program converter or some sample program?
0
Identify and Prevent Potential Cyber-threats

Become the white hat who helps safeguard our interconnected world. Transform your career future by earning your MS in Cybersecurity. WGU’s MSCSIA degree program was designed in collaboration with national intelligence organizations and IT industry leaders.

 
ozoCommented:
while( scanf("%2x",&c)>0 ){ putchar(c); }
0
 
GrailmanCommented:
void Convert(char* pStr, int StrSize)
{
  // pStr is a pointer to text string to be converted
  // and should be checked before calling this to
  // make sure all chars are '0-9' 'a-f' A-F' space <CR> or <LF>

  char ch;
  char Byte;
  int NibbleCount = 0;

  for(int i = 0; i < StrSize; i++)
  {
    ch = pStr;

    // make sure we have a char
    if(ch != 0x0A && ch != 0x0D && ch != 0x20)
    {
      if            (ch >= '0' && ch <= '9')      ch -= '0';
      else if      (ch >= 'a' && ch <= 'f')      ch -= ('a' - 10);
      else if      (ch >= 'A' && ch <= 'F')      ch -= ('A' - 10);

      if(!(NibbleCount % 2))                  // Set lower nibble
      {
        Byte = (ch << 4);
      }
      else                                          // Set upper nibble
      {
        Byte += ch;
        printf("%c", Byte);
      }
      NibbleCount++;                        // increment for each nibble
    }
    else
      printf("%c",ch);                        // print <CR><LF> or Space

    pStr++;
  }
}

0
 
suhaiAuthor Commented:
Thanks.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Improve Your Query Performance Tuning

In this FREE six-day email course, you'll learn from Janis Griffin, Database Performance Evangelist. She'll teach 12 steps that you can use to optimize your queries as much as possible and see measurable results in your work. Get started today!

  • 2
  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now