Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.11.2015, 16:48   #1
Ichimaru
Новичок
Джуниор
 
Регистрация: 03.11.2015
Сообщений: 5
По умолчанию C#//Работа с файлами

Создать файл с полями: фамилия, имя, отчество, номер телефона и адрес. Устроить поиск номера по первой букве фамилии
Ichimaru вне форума Ответить с цитированием
Старый 03.11.2015, 16:52   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Попытки были, Ичи-кун?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.11.2015, 17:01   #3
Ichimaru
Новичок
Джуниор
 
Регистрация: 03.11.2015
Сообщений: 5
По умолчанию

Пробовала записывать в файл данные в которых тип одинаковый, вроде получилось, а с этим заданием все никак
Ichimaru вне форума Ответить с цитированием
Старый 03.11.2015, 17:09   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну попытки в студию )
Не стесняйся, Ичико, тут все свои. Глядишь може и подправим до кондиции
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.11.2015, 17:17   #5
Ichimaru
Новичок
Джуниор
 
Регистрация: 03.11.2015
Сообщений: 5
По умолчанию

Но это было совсем другое задание, только массив занести в файл, ну и кое-как над ним поиздеваться
Код:
   Console.WriteLine("Введит размерность массива: ");
            int n = Int32.Parse(Console.ReadLine());
            Console.WriteLine("Введите m: ");
            int m = Int32.Parse(Console.ReadLine()) + 60;
            int[] A = new int[n];
            Random r = new Random();

            for (int i = 0; i < n; i++)
            {
                A[i] = r.Next(60, m);
                Console.Write(A[i] + "\t");
            }
            Console.WriteLine();

            if (!Directory.Exists("Mas"))
            {
                Directory.CreateDirectory("Mas");
            }

            Console.WriteLine("Write------------------------------------");
            StreamWriter sw = new StreamWriter("Mas\\" + "name.txt");
            for (int i = 0; i < n; i++)
            {
                sw.Write(A[i] + "\t");
            }
            sw.Close();
            Console.WriteLine("Read-------------------------------------");
            StreamReader sr = new StreamReader("Mas\\" + "name.txt");

            string textFromFile = "";

            while (!sr.EndOfStream)
            {
                textFromFile = sr.ReadLine();
                Console.WriteLine(textFromFile);
            }
            string[] mas = textFromFile.Trim().Split('\t');

            sr.Close();
            int n1 = -1;
            if (n % 2 != 0)
            {
                n1 = (n + 1) / 2;
            }
            else
            {
                n1 = n / 2;
            }

            int[,] B = new int[2, n1];

            int bi = 0; int bj = 0;
            for (int i = 0; i < A.Length; i++)
            {
                if (i % 2 == 0)
                {
                    B[0, bi] = A[i];
                    bi++;
                }
                else
                {
                    B[1, bj] = A[i];
                    bj++;
                }
            }
            Console.WriteLine("Write B-----------------------------------");
            sw = new StreamWriter("Mas\\" + "nameB.txt");
            for (int i = 0; i < 2; i++)
            {
                for (int j = 0; j < n1; j++)
                {
                    sw.Write(B[i, j] + "\t");
                    Console.Write(B[i, j] + "\t");
                }
                sw.WriteLine();
                Console.WriteLine();
            }

            Console.WriteLine("Write chars----------------------------------");
            for (int i = 0; i < 2; i++)
            {
                for (int j = 0; j < n1; j++)
                {
                    Console.WriteLine((char)B[i, j] + "\t");
                }
                Console.WriteLine();
            }
            char[,] C = new char[2, n1];

            for (int j = 0; j < n1; j++)
            {
                C[0, j] = (char)B[0, j];
                C[1, j] = (char)B[0, j];
            }
            Console.WriteLine("Mas C-----------------------------");
            for (int i = 0; i < 2; i++)
            {
                for (int j = 0; j < n1; j++)
                {
                    if (i == 0)
                    {
                        Console.Write(C[i, j] + "\t");
                    }
                    else { Console.Write((int)C[i, j] + "\t"); }
                }
                Console.WriteLine();
            }
            Console.ReadLine ();
            Console.ReadKey();
Ichimaru вне форума Ответить с цитированием
Старый 03.11.2015, 17:51   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Понятно.
Могу я предложить такую схему работы с файлом?:
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Xml.Serialization;
using System.IO;

namespace ConsoleApplication1
{
    [Serializable]
    public class Record {
        public string name;
        public string adres;
        public Record(string n, string a) { name = n; adres = a; }
        public Record() { }
    }
    
    class Program
    {
        static void Main(string[] args)
        {
            XmlSerializer serializer = new XmlSerializer(typeof(Record[]));
            TextWriter writer = new StreamWriter("d:\\1\\file.xml");

            Record[] r = new Record[] { new Record("Джон", "Хавастрит 25"), new Record("Бекки", "Уорнешир, 11") };
            serializer.Serialize(writer, r);
            writer.Close();
        }
    }
}
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.11.2015, 18:07   #7
Ichimaru
Новичок
Джуниор
 
Регистрация: 03.11.2015
Сообщений: 5
По умолчанию

А это кажись даже проще, ну или просто кажется, спасибо)
Ichimaru вне форума Ответить с цитированием
Старый 03.11.2015, 18:44   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну а че все усложнять? Сишарп жеж...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.11.2015, 18:54   #9
Ichimaru
Новичок
Джуниор
 
Регистрация: 03.11.2015
Сообщений: 5
По умолчанию

И то верно
Ichimaru вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с файлами: запись, добавление, чтение (найти ошибку в коде) / C для начинающих Надо создать программу для работы с файлами Konlor Общие вопросы C/C++ 2 18.05.2014 12:37
Работа с файлами F1nt Общие вопросы C/C++ 7 12.02.2012 13:22
работа с файлами Андрей.12 Помощь студентам 2 23.05.2010 16:50
Работа с файлами Maksi Фриланс 4 07.06.2008 11:38