Vous êtes sur la page 1sur 10

function varargout = TH02(varargin) % TH02 M-file for TH02.

fig % TH02, by itself, creates a new TH02 or raises the existing % singleton*. % % H = TH02 returns the handle to a new TH02 or the handle to % the existing singleton*. % % TH02('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in TH02.M with the given input arguments. % % TH02('Property','Value',...) creates a new TH02 or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before TH02_OpeningFcn gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to TH02_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help TH02 % Last Modified by GUIDE v2.5 24-Oct-2013 07:24:26 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @TH02_OpeningFcn, ... 'gui_OutputFcn', @TH02_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT

% --- Executes just before TH02 is made visible. function TH02_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to TH02 (see VARARGIN) % Choose default command line output for TH02

handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes TH02 wait for user response (see UIRESUME) % uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line. function varargout = TH02_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output;

function pathBox_Callback(hObject, eventdata, handles) % hObject handle to pathBox (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of pathBox as text % str2double(get(hObject,'String')) returns contents of pathBox as a double

% --- Executes during object creation, after setting all properties. function pathBox_CreateFcn(hObject, eventdata, handles) % hObject handle to pathBox (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

% --- Executes on button press in Browse. function Browse_Callback(hObject, eventdata, handles) % hObject handle to Browse (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) [filename, pathname] = uigetfile('*.txt', 'Pick an txt-file'); fullpathname= strcat(pathname,filename); whos fullpathname; disp(fullpathname);

set(handles.pathBox,'String',fullpathname);

% --- Executes on button press in Text2Bin. function Text2Bin_Callback(hObject, eventdata, handles) % hObject handle to Text2Bin (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) InpText=get(handles.InputText, 'String'); str= ConvertToBinary(InpText); set(handles.OutputText,'String', [InpText ': ' str]); disp(str); % --- Executes on button press in pushbutton3. function pushbutton3_Callback(hObject, eventdata, handles) % hObject handle to pushbutton3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

function InputText_Callback(hObject, eventdata, handles) % hObject handle to InputText (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of InputText as text % str2double(get(hObject,'String')) returns contents of InputText as a double

% --- Executes during object creation, after setting all properties. function InputText_CreateFcn(hObject, eventdata, handles) % hObject handle to InputText (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

function OutputText_Callback(hObject, eventdata, handles) % hObject handle to OutputText (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of OutputText as text % str2double(get(hObject,'String')) returns contents of OutputText % as a double

% --- Executes during object creation, after setting all properties. function OutputText_CreateFcn(hObject, eventdata, handles) % hObject handle to OutputText (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

% --- Executes on button press in Nhung. function Nhung_Callback(hObject, eventdata, handles) % hObject handle to Nhung (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) InpText=get(handles.InputText, 'String'); str= ConvertToBinary(InpText); fname=get(handles.pathBox,'String'); fstream= fileread(fname) fout =get(handles.pathBox2,'String'); EncodeStream=Nhung(fstream,str); filewrite(fout,EncodeStream); msgbox('Encode Xong');

% --- Executes on button press in Browse2. function Browse2_Callback(hObject, eventdata, handles) % hObject handle to Browse2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) [filename, pathname] = uiputfile('*.txt', 'Pick an txt-file'); fullpathname= strcat(pathname,filename); whos fullpathname; disp(fullpathname); set(handles.pathBox2,'String',fullpathname);

function pathBox2_Callback(hObject, eventdata, handles) % hObject handle to pathBox2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of pathBox2 as text % str2double(get(hObject,'String')) returns contents of pathBox2 as a double

% --- Executes during object creation, after setting all properties. function pathBox2_CreateFcn(hObject, eventdata, handles) % hObject handle to pathBox2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

% --- Executes on button press in Decode. function Decode_Callback(hObject, eventdata, handles) % hObject handle to Decode (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) Mess=get(handles.InputText,'String'); fname=get(handles.pathBox2,'String'); % chon file da encode trong pathBox2 fstream= fileread(fname) Bin=RutTrich(fstream); Message=ConvertToText(Bin); set(handles.OutputText,'String',Message); msgbox('Encode Xong'); %set(handles.OutputText,'String',Mess);

% --- Executes on button press in pushbutton7. function pushbutton7_Callback(hObject, eventdata, handles) % hObject handle to pushbutton7 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

ConvertToBinary function [ binStr ] = ConvertToBinary( str ) binStr = ''; for i = 1: length(str) disp(dec2bin(str(i))); binStr = strcat(binStr, dec2bin(str(i),8)); end

end

ConvertToText function [ str ] = ConvertToText( binStr ) str = ''; len = length(binStr); len = len / 8; for i = 1: len t = ''; for j = (i-1)*8+1: i*8 t = strcat(t, binStr(j)); end t = char(bin2dec(t)); if t == ' ' t = '-'; end str = strcat(str, t); end for i = 1: length(str) if str(i) == '-' str(i) = ' '; end end end

Nhung function [ embeded ] = Nhung( cover , secret ) embeded = 'e'; remain=cover; k=1; while true [token1, remain] = strtok(remain, ' ') [token2, remain] = strtok(remain, ' ')

if( strcmp(secret(k),'0')) temp=[token1 ' ' token2 ' e'] embeded = [embeded(1:end-1), temp] end

if( strcmp(secret(k),'1')) temp = [token1 ' ' token2 ' e'] % matlab k cho php 1 string c blank sau ?t nn thm e vo, lt g? e ra! embeded = [embeded(1:end-1), temp] % dng strcat n b? kho?ng tr?ng sau embeded(1:end-1) xong ghp temp c?ng nh? k end

k= k + 1;

if(k>length(secret)) % nhng h?t n?i dung r?i!

break; end; end; %ket thuc while embeded=[embeded(1:end-1), remain] end %function

filewrite function filewrite(myfile, mytext) fid = fopen(myfile,'w'); fprintf(fid, '%s', mytext); fclose(fid);

RutTrich

function [secret] = RutTrich( embeded ) secret=''; a=0; % 3 khoang trang a b c b=0; i=1; while true ei=embeded(i); ek=embeded(i+1); if strcmp(ei,' ') && strcmp(ek,' ') if (a==0) a=a+2; end;

if (a==1) b=b+2; end ; i=i+1; end if strcmp(ei,' ') && not(strcmp(ek,' ')) if(a==1) % vua doc 1 blank rieng truoc do roi, them nay nua la 2 blank ddown- ket thuc break; end; if(a==0) a=a+1; end; if(a==2) b=b+1; end; end

if a+b==3; if (a==1) secret=[secret '0'] else secret=[secret '1'] end;

a=0; b=0; end

i=i+1; % BREAK n?a end

end

Vous aimerez peut-être aussi