Big Brother
سه شنبه 25 بهمن 1384, 14:20 عصر
راستش من مدتیه با این سایت آشنا شدم و تا الان هم برای پیدا کردن جوابم هم سرچ کردم و هم تا صفحه 46 قسمت: "برنامه نویسی در #C" رو دنبال تاپیکی که جوابم رو توش پیدا کنم گشتم خیلی چیزا پیدا کردم ولی راه حل مورد نظرم رو پیدا نکردم! با توجه به وقت کمی که برای تحویل این پروژه دارم مجبور شدم این تاپیک رو بزنم.
و اما مشکل:
متاسفانه من توی سی شارپ یه مبتدی هستم. کاری که میخوام بکنم اینه که میخوام برنامه, یه فایل متنی (txt یا doc یا هردو!) که آدرسش رو یوزر میده رو باز کنه و محتویاتش رو تماما به یه textBox (یا RichTextBox هر کدوم مناسبتره) منتقل کنه. فقط همین! (یعنی قصد تغییر در فایل مربوطه رو ندارم)
برای این کار من از Open File Dialog استفاده کردم (با راهنمایی های یه کتاب). حالا در زمان اجرا کادر محاوره ای open file ظاهر میشه ولی توی قسمت تایپش (تایپ های قابل پشتیبانی) هیچی نیست. و اگه یه فایل متنی رو باهاش open کنم Error میده که فایل قابل شناسایی نیست!
اینم کد برنامه ی من هست. (امیدوارم اشتباه احمقانه ای توش نباشه!:لبخند: )
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
using System.Runtime.Serialization;
namespace test_project
{
/// <summary>
/// Summary description for Form1.
/// </summary>
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.Button button1;
private System.Windows.Forms.OpenFileDialog openFileDialog1;
private System.Windows.Forms.RichTextBox richTextBox1;
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.Container components = null;
public Form1()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
//
// TODO: Add any constructor code after InitializeComponent call
//
}
/// <summary>
/// Clean up any resources being used.
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
private FileStream input;
private string fileName;
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.button1 = new System.Windows.Forms.Button();
this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.SuspendLayout();
//
// button1
//
this.button1.Location = new System.Drawing.Point(168, 176);
this.button1.Name = "button1";
this.button1.TabIndex = 0;
this.button1.Text = "Open";
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// richTextBox1
//
this.richTextBox1.Location = new System.Drawing.Point(48, 8);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.Size = new System.Drawing.Size(296, 128);
this.richTextBox1.TabIndex = 1;
this.richTextBox1.Text = "";
//
// Form1
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(432, 310);
this.Controls.Add(this.richTextBox1);
this.Controls.Add(this.button1);
this.Name = "Form1";
this.Text = "Form1";
this.Load += new System.EventHandler(this.Form1_Load);
this.ResumeLayout(false);
}
#endregion
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new Form1());
}
private void Form1_Load(object sender, System.EventArgs e)
{
}
private void button1_Click(object sender, System.EventArgs e)
{
OpenFileDialog fileChooser = new OpenFileDialog();
DialogResult result = fileChooser.ShowDialog();
if(result==DialogResult.Cancel )
return;
fileName = fileChooser.FileName ;
if(fileName == ""||fileName == null)
MessageBox.Show("Invalid File Name","Error",MessageBoxButtons.OK,MessageBoxIcon.Error);
input = new FileStream(fileName,FileMode.Open,FileAccess.Read) ;
richTextBox1.LoadFile(fileName);
}
}
}
اگه لطف کنید مشکل این برنامه رو اصلاح کنید یا برنامه صحیح برای انجام اینکار رو برام بنویسین. خیلی خیلی ممنون میشم. بدجوری لنگش هستم.
و اما مشکل:
متاسفانه من توی سی شارپ یه مبتدی هستم. کاری که میخوام بکنم اینه که میخوام برنامه, یه فایل متنی (txt یا doc یا هردو!) که آدرسش رو یوزر میده رو باز کنه و محتویاتش رو تماما به یه textBox (یا RichTextBox هر کدوم مناسبتره) منتقل کنه. فقط همین! (یعنی قصد تغییر در فایل مربوطه رو ندارم)
برای این کار من از Open File Dialog استفاده کردم (با راهنمایی های یه کتاب). حالا در زمان اجرا کادر محاوره ای open file ظاهر میشه ولی توی قسمت تایپش (تایپ های قابل پشتیبانی) هیچی نیست. و اگه یه فایل متنی رو باهاش open کنم Error میده که فایل قابل شناسایی نیست!
اینم کد برنامه ی من هست. (امیدوارم اشتباه احمقانه ای توش نباشه!:لبخند: )
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
using System.Runtime.Serialization;
namespace test_project
{
/// <summary>
/// Summary description for Form1.
/// </summary>
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.Button button1;
private System.Windows.Forms.OpenFileDialog openFileDialog1;
private System.Windows.Forms.RichTextBox richTextBox1;
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.Container components = null;
public Form1()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
//
// TODO: Add any constructor code after InitializeComponent call
//
}
/// <summary>
/// Clean up any resources being used.
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
private FileStream input;
private string fileName;
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.button1 = new System.Windows.Forms.Button();
this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.SuspendLayout();
//
// button1
//
this.button1.Location = new System.Drawing.Point(168, 176);
this.button1.Name = "button1";
this.button1.TabIndex = 0;
this.button1.Text = "Open";
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// richTextBox1
//
this.richTextBox1.Location = new System.Drawing.Point(48, 8);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.Size = new System.Drawing.Size(296, 128);
this.richTextBox1.TabIndex = 1;
this.richTextBox1.Text = "";
//
// Form1
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(432, 310);
this.Controls.Add(this.richTextBox1);
this.Controls.Add(this.button1);
this.Name = "Form1";
this.Text = "Form1";
this.Load += new System.EventHandler(this.Form1_Load);
this.ResumeLayout(false);
}
#endregion
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new Form1());
}
private void Form1_Load(object sender, System.EventArgs e)
{
}
private void button1_Click(object sender, System.EventArgs e)
{
OpenFileDialog fileChooser = new OpenFileDialog();
DialogResult result = fileChooser.ShowDialog();
if(result==DialogResult.Cancel )
return;
fileName = fileChooser.FileName ;
if(fileName == ""||fileName == null)
MessageBox.Show("Invalid File Name","Error",MessageBoxButtons.OK,MessageBoxIcon.Error);
input = new FileStream(fileName,FileMode.Open,FileAccess.Read) ;
richTextBox1.LoadFile(fileName);
}
}
}
اگه لطف کنید مشکل این برنامه رو اصلاح کنید یا برنامه صحیح برای انجام اینکار رو برام بنویسین. خیلی خیلی ممنون میشم. بدجوری لنگش هستم.