Информация об оперативной памяти - C#

Узнай цену своей работы

Формулировка задачи:

Пишу простейшую программу для вывода информации об оперативной памяти, но столкнулся с такой проблемой, что при сохранении выведенных на экран данных программа сохраняет их не полностью.Помогите решить пожалуйста.
using System;
using System.Collections.Generic;
using System.Text;
using System.Management;
using System.IO;
namespace ram
{
    class Program
    {
        static void Main(string[] args)
        {
            ManagementObjectSearcher searcher =
    new ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMemory");
 
            Console.WriteLine("PhysicalMemory");
            foreach (ManagementObject queryObj in searcher.Get())
            {
                Console.WriteLine(" Bank: {0} ; Capacity: {1} Gb; Speed: {2} ; SerialNumber: {3}; ", queryObj["BankLabel"], Math.Round(System.Convert.ToDouble(queryObj["Capacity"]) / 1024 / 1024, 2),
                                   queryObj["Speed"], queryObj["SerialNumber"] );
            
            StreamWriter str = new StreamWriter(@"C:\\Ram.txt");
            strmw.WriteLine( "Bank: {0} ; Capacity: {1} Gb; Speed: {2} ; SerialNumber: {3}; ", queryObj["BankLabel"], Math.Round(System.Convert.ToDouble(queryObj["Capacity"]) / 1024 / 1024, 2),
                                   queryObj["Speed"], queryObj["SerialNumber"]);
            str.Close();
 
            }
 
            Console.WriteLine(" Для продолжения нажмите любую клавишу...");
            Console.ReadLine();
        }
    }
}
P.S И еще подскажите почему если в цикл
            foreach (ManagementObject queryObj in searcher.Get())
            {
             
            }
написать Console.WriteLine("Что либо"), то консолька это продублирует 2 раза

Решение задачи: «Информация об оперативной памяти»

textual
Листинг программы
    static void Main(string[] args)
        {
            ManagementObjectSearcher searcher =
    new ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMemory");
 
            Console.WriteLine("PhysicalMemory");
            foreach (ManagementObject queryObj in searcher.Get())
            {
                Console.WriteLine(" Bank: {0} ; Capacity: {1} Gb; Speed: {2} ; SerialNumber: {3}; ", queryObj["BankLabel"], Math.Round(System.Convert.ToDouble(queryObj["Capacity"]) / 1024 / 1024, 2),
                                   queryObj["Speed"], queryObj["SerialNumber"]);
 
                using (StreamWriter str = new StreamWriter(@"C:\Ram.txt",true))
                {
                    str.WriteLine("Bank: {0} ; Capacity: {1} Gb; Speed: {2} ; SerialNumber: {3}; ", queryObj["BankLabel"], Math.Round(System.Convert.ToDouble(queryObj["Capacity"]) / 1024 / 1024, 2),
                                           queryObj["Speed"], queryObj["SerialNumber"]);
                }
 
 
            }
 
            Console.WriteLine(" Для продолжения нажмите любую клавишу...");
            Console.ReadLine();
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.714 из 5
Похожие ответы