Hey guys,
I was just messing around making a really simple encryption type program. Reads a file in, changes some letters around (makes no effort at case sensitivity), then outputs it to another file. I have given it a good try but can't seem to get the letters to change. I'm sure it's something stupid...but I can't see it right now.
And there it is!Code:/************************************************************************************** A program to receive a text file, then use simple encryption method to encrypt it, then another method to decrypt it***********************************************/ #define _CRT_SECURE_NO_DEPRECATE #include <stdio.h> #include <ctype.h> #include <string.h> #define SIZE 63 #define LBUFSIZE 64 int getWord(FILE *fp, char wbuf[], int c); void output(char lbuf[]); FILE *encrypt; void main(void) { FILE *fp; int c = 0; char wbuf[SIZE]; char lbuf[LBUFSIZE]; encrypt = fopen("encrypt.dat", "w"); fp = fopen("file.txt", "r"); lbuf[0] = '\0'; c = getWord(fp, wbuf, c); while(c != EOF) { //add 1 for space if((strlen(lbuf) + 1 + strlen(wbuf)) > 62) { output(lbuf); strcpy(lbuf, wbuf); } else { //enough space for this word strcat(lbuf, " "); strcat(lbuf, wbuf); } c = getWord(fp, wbuf, c); } if (c == EOF && strlen(lbuf) > 0) { output(lbuf); } fclose(fp); fclose(encrypt); } int getWord(FILE *fp, char wbuf[], int c) { int i = 0; if(isalpha(c)) { letterSwitch(c); wbuf[i] = c; i++; } c = fgetc(fp); while(c !=EOF && isalpha(c)) { letterSwitch(c); wbuf[i] = c; i++; c = fgetc(fp); } wbuf[i] = '\0'; while(c != EOF && !isalpha(c)) { c = fgetc(fp); } return c; } void output(char lbuf[]) { printf("%s\n", lbuf); fprintf(encrypt, "%s\n", lbuf); } int letterSwitch(int c) { switch(c) { case 'a': c = '!'; case 'e': c = '@'; case 'i': c = '#'; case 'o': c = '%'; case 'r': c = '^'; case 'b': c = '&'; case 's': c = '*'; case 't': c = '('; case 'v': c = ')'; case 'p': c = '_'; case 'l': c = '+'; case 'n': c = '='; case 'm': c = '['; case 'g': c = ']'; case 'c': c = '?'; case 'y': c = '<'; case 'q': c = '>'; case 'k': c = '/'; } return c; }



LinkBack URL
About LinkBacks



but this isn't encryption, it's encoding.