One Bit Parity


Download Code

Sender Side:


package OneBit;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;

public class sender {
    public static void main(String[] args) throws IOException {
        File f=new File("src/OneBit/msg.txt");
        FileWriter fw=new FileWriter(f);
        BufferedWriter bw=new BufferedWriter(fw);
     
        Scanner s=new Scanner(System.in);
        System.out.println("Enter msg:");
        String msg=s.nextLine();
        char[]ch=msg.toCharArray();
        String bin[]=new String[ch.length];
        int rBit=0;
        for (int i = 0; i < msg.length(); i++) {
            bin[i]=Integer.toBinaryString(ch[i]);
            bw.write(bin[i]);
            bw.newLine();
            char binn[]=bin[i].toCharArray();
            for (int j = 0; j < binn.length; j++) {
                rBit=rBit^Integer.parseInt(binn[j]+"");
            }
        }
        bw.write(rBit+"");
        bw.flush();
        bw.close();fw.close();
    }
}

run:
Enter msg:
smit shah
BUILD SUCCESSFUL (total time: 6 seconds)

FILE:

1110011
1101101
1101001
1110100
100000
1110011
1101000
1100001
1101000
1


Receiver Side:



package OneBit;

import java.io.*;

public class Receiver {
    public static void main(String[] args) throws FileNotFoundException, IOException {
        File f=new File("src/OneBit/msg.txt");
        FileReader fr=new FileReader(f);
        BufferedReader br=new BufferedReader(fr);
        StringBuilder msg=new StringBuilder();
        String temp;
        int rBit=0;
        while((temp=br.readLine())!=null)
        {
            char[]bin=temp.toCharArray();
            for (int i = 0; i < bin.length; i++) {
                rBit=rBit^Integer.parseInt(bin[i]+"");
            }
            int ascii=Integer.parseInt(temp,2);
            msg.append((char)ascii);
        }
        if(rBit==0)
        {
            msg.deleteCharAt(msg.length()-1);
            System.out.println("Your Message is:"+msg);
        }
        else
        {
            System.out.println("Your Data is Currupted");
        }
     
    }
}

run:
Your Message is:smit shah
BUILD SUCCESSFUL (total time: 0 seconds)


Comments

Popular posts from this blog

CheckSum

hamming Code