2017-12-19 13 views
-3

テキストをファイルに保存するプログラムを作成したいのですが、私のプログラムではテキストの内容を保護したり暗号化したりしたいと思っています。例えば、ユーザーが "Salamence"をプログラムに入力すると、ファイル) "hjkjupfqp"なので、プログラムにアクセスできない人は読めません(テキストファイルも解読できるようにしたい)ので、C++では文字列を読み込むことができますあるキャラクターを別のキャラクターに変更し、それをどうやって行うのですか?文字列入力を変更することはできますか?

+1

はい、可能です。 – StoryTeller

+0

それはあなたがそう尋ねる変です。それは「ナイフで物事をカットできますか?」と尋ねるようなものです。 –

+0

C++を使用してファイルI/Oを学び、Webを調べると、C++言語を使用してテキスト(または他のタイプのファイル)ファイルを読み書きするための例が多数見つかります。宿題に関する質問です。 –

答えて

-1

文字列は、他のものが入っているコンテナに入れられた一連の文字です。文字自体は、[]オペレータを通じてアクセスできます。 charは基本的に8ビットの整数で、表示することができます。整数算術操作することができる(+-*、...)、ビット単位(<<|^&、...)、など

ですから、このような何かを行うことができます:

#include <iostream> 
#include <string> 
using namespace std; //bad idea, but simplifies stuff 
int main(){ 
    string s; 
    cin>>s; //reads the string 
    for(int i=0;i < s.size;i++){ //loops through all characters of the string 
     s[i]++; //adds one to the string 
    } 
    cout<<s; //outputs the modified string 
} 

これは、 "abc"を "bcd"に変えます。これはややばかげた暗号化ですが、それは概念を証明しています。

復号化するには、ループをコピーする必要がありますが、s[i]++s[i]--に置き換えてください。

初心者のようですので、実際にはCスタイルの文字列を使用することをおすすめしますが、これはこの質問の範囲外です。

+0

はい私はあなたの返事のための完全な初心者の感謝ですが、なぜ "using namespace std;"悪い考えですか? – salmanrf

+0

[クイック検索でこれを実現](https://stackoverflow.com/questions/1452721/why-is-using-namespace-std-considered-bad-practice) –

関連する問題