Запись в файл с использованием char

(1)Записывая в файл, тот текст, который был передан в форме char, из него получились какие-то "кракозябры", а с использованием string все в порядке. В чем ошибка, при использовании char ? (2) Как можно переместиться на определенное количество строк, нашел функцию fseek, но не понял, как ей пользоваться, как представить файл в бинарном виде. И еще вопрос (3) Например, я ищу какое-то слов в файле, можно ли, найдя строку с этим словом, взять не всю строку, а только ту часть, которая идет после него ?

 class Mobile {
    public:
        char name[30]; // Фамилия       // Например, здесь   
        string date;  // Дата установки
        int number; // номер телефона
        char address[30];               // И здесь
        Mobile(char *n, string de, int num, char *add) {
            name[30] = n[30];
            date = de; 
            number = num;
            address[30] = add[30];
        }
    };

    ostream& operator<<(ostream & of, Mobile &d) {
        of << "Name: " << d.name << "\nInstallation date: " << d.date << "\nNumber: " << d.number << "\nAddress: " << d.address << "\n";
        return of;
    }

    int main()
    {
        ofstream oname("write.txt");
        ifstream iname("write.txt");
        int n, N;
        char name[30];
        int number;
        string date;
        char address[30];
        string inform;
        if (!oname.is_open()) {
            cout << "File for writing is not open";
        }
        else {
            cout << "Сколько абонентов желаете ввести: "; cin >> n;

            for (int i = 0; i < n; i++) {
                cout << i + 1 << " Абонент:\n";
                cout << "Введите фамилию абонента: "; cin >> name;
                cout << "Введите номер абонента: "; cin >> number; 
                cout << "Введите дату установки: "; cin >> date;
                cout << "Введите адрес абонента: "; cin >> address;
                    Mobile abonent(name, date, number, address);
                    oname << abonent;
                }

Ответы (0 шт):