PDA

View Full Version : سوال: برعکس کردن متن



victoria
چهارشنبه 16 فروردین 1391, 19:36 عصر
سلام دوستان. من یه فایل ورد دارم که می خوام متن توی اون فایلمو برعکس کنم مثلا اگه نوشته با بشه اب.کد برعکس کردنو دارم ولی این که چه جوری روی فایل وردم پیادش کنم برام سواله. ممنون از همتون.

modern_amin
پنج شنبه 17 فروردین 1391, 08:54 صبح
قانونا باید متن رو کامل بخونی و طول اونرو بدست بیاری و از آخر یکی یکی کارکتر ها رو نمایش بدی
با یک حلقه فور میتونی (سرعتش نسبت به بقیه بیشتره)
اینکه کل متن رو با یک خط دستور معکوس کنی رو من بلد نیستم و تو سرچ هایی هم که کردم به چشمم نخورد
در کل نمونه تو سایت زیاده ، سرچ کن

sirvan-me
پنج شنبه 17 فروردین 1391, 11:40 صبح
کدی که نوشتم به اینصورته که اول یا یه Button محتویات فایل ورد ( Doc و Docx ) رو تو یه Richtextbox نمایش میده و بعد با زدن Button دیگه ای محتویات فایل رو به صورت بالعکس تو همون Richtextbox نمایش میده .

یادت نره که به Refrence های برنامت Refrence

Microsoft Word 12.0 object library

رو اضافه کنی .



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.Office.Interop.Word;

namespace Word_Reader
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void btn_Open_Click(object sender, EventArgs e)
{
OpenFileDialog Ofd = new OpenFileDialog();
Ofd.Filter = "Doc File|*.doc|Docx File|*.docx";
Ofd.CheckFileExists = true;
Ofd.CheckPathExists = true;
Ofd.InitialDirectory = @"C:\";
Ofd.RestoreDirectory = true;

if (Ofd.ShowDialog() == DialogResult.OK)
{
try
{
ApplicationClass Word = new ApplicationClass();
object file = Ofd.FileName;
object nullobject = System.Reflection.Missing.Value;
Document docs = Word.Documents.Open
(ref file, ref nullobject, ref nullobject, ref nullobject,
ref nullobject, ref nullobject, ref nullobject, ref nullobject,
ref nullobject, ref nullobject, ref nullobject, ref nullobject,
ref nullobject, ref nullobject, ref nullobject, ref nullobject
);
docs.ActiveWindow.Selection.WholeStory();
docs.ActiveWindow.Selection.Copy();
IDataObject data = Clipboard.GetDataObject();
richTextBox1.Text = data.GetData(DataFormats.Text).ToString();
docs.Close(ref nullobject, ref nullobject, ref nullobject);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString);
}
}
}

private void btn_Reverse_Click(object sender, EventArgs e)
{
string Temp = richTextBox1.Text.Trim();
char[] Character = Temp.ToCharArray();
Array.Reverse(Character);
richTextBox1.Clear();
foreach (char oneCharacter in Character)
{
richTextBox1.AppendText(oneCharacter.ToString());
}
}
}
}

victoria
پنج شنبه 17 فروردین 1391, 20:58 عصر
ممنون کدتون خیلی کمکم کرد. فقط یه سوالی داشتم اینه که برای فایل های فارسی علامت سوال میذاره نمیدونید چه جوری حلش کنم.ممنون.

sirvan-me
پنج شنبه 17 فروردین 1391, 22:43 عصر
ممنون کدتون خیلی کمکم کرد. فقط یه سوالی داشتم اینه که برای فایل های فارسی علامت سوال میذاره نمیدونید چه جوری حلش کنم.ممنون.

خواهش می کنم . شما خط 44 رو به صورت زیر تغییر بده :


richTextBox1.Text = data.GetData(DataFormats.UnicodeText).ToString();