[ C# / Java ] — начинающим: задаем вопросы

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by procedure, 2 Nov 2008.

  1. KINОshnik

    KINОshnik New Member

    Joined:
    22 Mar 2009
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Ребята нужна помощь В С# мне нужно по символу восстановить его целочисленный код в таблице ASCII и обратно, по числу получить символ из таблицы. Напишите пожалуйста кусочек кода как это провернуть
     
  2. Algol

    Algol New Member

    Joined:
    29 May 2002
    Messages:
    1,759
    Likes Received:
    4
    Reputations:
    0
    Convert.ToByte()
    Convert.ToChar()
     
  3. n4e/\@

    n4e/\@ Elder - Старейшина

    Joined:
    6 May 2008
    Messages:
    138
    Likes Received:
    17
    Reputations:
    0
    Разбираю пример из книжки по java
    Есть следующий код:
    Code:
    class NewThread implements Runnable {
        String name;
        Thread t;
        NewThread( String threadname ) {
            name = threadname;
            t = new Thread( this, name );
            System.out.println("Новый поток: " + t);
            t.start();
        }
        public void run() {
            try {
                for ( int i = 5; i > 0; i-- )
                {
                    System.out.println(name + ": " + i);
                    Thread.sleep(1000);
                }
            } catch (InterruptedException e) {
                System.out.println( name + " прерван");
            }
            System.out.println(name + " завершен");
        }
    }
    
    class DemoJoin {
        public static void main(String args[]) {
            NewThread ob1 = new NewThread("Один");
            NewThread ob2 = new NewThread("Два");
            NewThread ob3 = new NewThread("Три");
            System.out.println("Поток один запущен: " + ob1.t.isAlive() );
            System.out.println("Поток два запущен: " + ob2.t.isAlive() );
            System.out.println("Поток три запущен: " + ob3.t.isAlive() );
            try {
                System.out.println("Ожидание завершение потоков.");
                ob1.t.join();
                ob2.t.join();
                ob3.t.join();
            }catch ( InterruptedException e ) {
                System.out.println("Главный поток прерван");
            }
    
            System.out.println("Поток один запущен: " + ob1.t.isAlive() );
            System.out.println("Поток два запущен: " + ob2.t.isAlive() );
            System.out.println("Поток три запущен: " + ob3.t.isAlive() );
            System.out.println("Главный поток завершен.");
        }
    }
    
    
    Почему отрабатывается метод run, ведь он не где в коде не запускается?
     
  4. cel1697i845

    cel1697i845 Elder - Старейшина

    Joined:
    22 Nov 2008
    Messages:
    616
    Likes Received:
    383
    Reputations:
    80
    C#

    Просьба помочь! укажите пожалуйста что и где я делаю не правильно. Пытаюсь отправить сообщение на rambler.ru
    Вот весь код:
    Code:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.Net;
    using System.Net.Mail;
    using System.Net.Mime;
    using System.Web;
    
    namespace WindowsFormsApplication8
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                SmtpClient S = new SmtpClient("pop3.rambler.ru", 587);
                S.Credentials = new NetworkCredential("ИМЯ", "Password");
                MailMessage M = new MailMessage();
                M.From = new MailAddress("ИМЯ@rambler.ru");
                M.To.Add(new MailAddress("ИМЯ@rambler.ru"));
                M.Subject = " ПРОВЕРКА";
                M.Body = "Привет !!!";
                S.Send(M);            
            }
        }
    }
    Заранее благодарю за помощь.
     
  5. razb

    razb Active Member

    Joined:
    24 Mar 2009
    Messages:
    658
    Likes Received:
    133
    Reputations:
    18
    2n4e/\@
    метод start() после создания потока вызывает переопределенный метод run()
     
  6. Algol

    Algol New Member

    Joined:
    29 May 2002
    Messages:
    1,759
    Likes Received:
    4
    Reputations:
    0
    Какая ошибка возникает? Здесь не клуб телепатов.
     
    #326 Algol, 22 Dec 2009
    Last edited: 22 Dec 2009
  7. cel1697i845

    cel1697i845 Elder - Старейшина

    Joined:
    22 Nov 2008
    Messages:
    616
    Likes Received:
    383
    Reputations:
    80
    ошибка вылетает в строке
    Code:
    S.Send(M);
    сама ошибка "The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.1 Authentication required" я так понимаю, что я не правильно указал что-то в строке
    Code:
    SmtpClient S = new SmtpClient("pop3.rambler.ru", 587);
    или я ошибаюсь.
     
  8. Algol

    Algol New Member

    Joined:
    29 May 2002
    Messages:
    1,759
    Likes Received:
    4
    Reputations:
    0
    В тексте ошибки ответ на твой вопрос. Либо неправильно указан логин/пароль. Либо рамблер требует SSL. Если второе - то SmtpClient не поддерживает SSL (он вообще ничего не поддерживает, для серьезных приложений - не годится).

    PS
    Хотя нет, посмотрел SmtpClient все таки поддерживает SSL, см EnableSsl=true
     
    #328 Algol, 23 Dec 2009
    Last edited: 23 Dec 2009
  9. Insane bboy

    Insane bboy New Member

    Joined:
    11 Jul 2009
    Messages:
    52
    Likes Received:
    3
    Reputations:
    0
    кодю на джаве совсем недолго, у меня возникла проблема с jlist, я не знаю как управлять элементами jlist, пишу в нетбинсе, добавляю jlist на панель, вот код:

    jList1 = new javax.swing.JList();

    jList1.setModel(new javax.swing.AbstractListModel() {
    String[] strings = { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" };
    public int getSize() { return strings.length; }
    public Object getElementAt(int i) { return strings; }

    });

    jList1.setName("jList1"); // NOI18N
    DefaultListModel
    jScrollPane1.setViewportView(jList1);

    как управлять элементами? методов add, del, etc я е обнаружил у jList1..
    и как должна выглядеть строчка String[] strings = { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" }; чтоб элементы брались из файла по типу, строка - элемент)
     
  10. ss88

    ss88 Banned

    Joined:
    27 Nov 2008
    Messages:
    160
    Likes Received:
    44
    Reputations:
    5
    Представляй свои элементы в виде списка. Я написал маленький примерчик, там есть комментарии
    Code:
    import java.awt.BorderLayout;
    import java.awt.event.ActionEvent;
    import java.util.ArrayList;
    import java.util.Arrays;
    
    import javax.swing.AbstractAction;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JList;
    import javax.swing.JScrollPane;
    import javax.swing.SwingUtilities;
    
    /**
     * @author ss88
     * 
     */
    public class HelloListFrame extends JFrame {
    	/**
    	 * 
    	 */
    	private static final long serialVersionUID = 4357062401801939262L;
    	private JList list;
    	private ArrayList<String> items;
    
    	public HelloListFrame(String[] listItems) {
    
    		setTitle("JList example");
    
    		setSize(300, 300);
    
    		items = new ArrayList<String>(Arrays.asList(listItems));
    		/**
    		 * Мы могли бы передать массив объектов в качестве параметра одного из
    		 * конструкторов класса, но мы намерено создаем пустой список
    		 */
    		list = new JList();
    
    		/**
    		 * имя метода не совсем очевидно, но имеем, то и имеем :) Мы просто
    		 * передаем массив или список объектов, которые представляют собой
    		 * содержимое списка
    		 */
    		list.setListData(items.toArray());
    
    		// установка бордюрного менеджера компоновки
    		setLayout(new BorderLayout());
    
    		// добавление списка в центральную часть фрейма
    		add(new JScrollPane(list), BorderLayout.CENTER);
    		
    		add(new JButton(new DeleteAction("Delete last")), BorderLayout.SOUTH);
    	}
    
    	private class DeleteAction extends AbstractAction {
    
    		private static final long serialVersionUID = 3638818075843161033L;
    		public DeleteAction(String title) {
    			putValue(NAME, title);
    		}
    		@Override
    		public void actionPerformed(ActionEvent arg0) {
    			if (!items.isEmpty()) {
    				items.remove(items.size() - 1);
    				list.setListData(items.toArray());
    			}
    		}
    
    	}
    
    	public static void main(String[] args) {
    		SwingUtilities.invokeLater(new Runnable() {
    
    			@Override
    			public void run() {
    				HelloListFrame frame = new HelloListFrame(new String[] {
    						"Оболонь", "Чернігівське", "Славутич", "Балтика",
    						"ППБ", "Рогань", "ПИТ" });
    				frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
    				frame.setVisible(true);
    			}
    		});
    	}
    }
     
    1 person likes this.
  11. Patrik

    Patrik Elder - Старейшина

    Joined:
    15 Jan 2006
    Messages:
    42
    Likes Received:
    6
    Reputations:
    0
    Помогите написать, найти (не смог) софт, позволяющий брутфорсить сайт на наличие html страничек примерно так: site.ru/something/*.html, где вместо * будут подставляться символы и цифры.

    Уже написал. Вопрос снят.
     
    #331 Patrik, 28 Dec 2009
    Last edited: 28 Dec 2009
  12. dies1

    dies1 Banned

    Joined:
    18 Nov 2009
    Messages:
    4
    Likes Received:
    5
    Reputations:
    0
    Доброго времени суток, у меня такой вопрос - мне нужно что бы у главной формы отбрасывалась тень(C#), делаю вот так
    PHP:
            protected override CreateParams CreateParams
            
    {
                
    get
                
    {
                    const 
    int CS_DROPSHADOW 0x35000;
                    
    CreateParams param base.CreateParams;
                    
    param.ClassStyle += CS_DROPSHADOW;
                    return 
    param;
                }
            }
    но если у пользователя чекбокс "Отображать тени, отбрасываемые меню" в офф то тени как бы и нету, включать его програмно каждый раз тоже не вариант, какие есть еще варианты если окно фиксированного размера?
     
  13. Insane bboy

    Insane bboy New Member

    Joined:
    11 Jul 2009
    Messages:
    52
    Likes Received:
    3
    Reputations:
    0
    спасибо за помощь с этим я разобрался, но возникла другая проблема, а именно как сериализовать\востановить данные swing компонетнов, к примеру мне надо после окончания работы программы сохранить даные с jtable:
    сериализую:
    class ShutdownHook extends Thread {
    public void run() {
    try {
    DefaultTableModel data = (DefaultTableModel) hosts.getModel();
    FileOutputStream fos = new FileOutputStream("out");
    ObjectOutputStream oos = new ObjectOutputStream(fos);
    oos.writeObject(data);
    oos.flush();
    oos.close();
    System.out.println("Shutting down");
    } catch (IOException ex) {
    Logger.getLogger(InsaneSPView.class.getName()).log(Level.SEVERE, null, ex);
    }

    }
    }
    востанавливаю, код в конструкторе главного класса:
    File check = new File("out");
    if(check.exists()){
    try {
    FileInputStream fis = new FileInputStream("out");
    ObjectInputStream oin = new ObjectInputStream(fis);
    DefaultTableModel data = (DefaultTableModel)hosts.getModel();
    data = (DefaultTableModel) oin.readObject();
    } catch (IOException ex) {
    Logger.getLogger(InsaneSPView.class.getName()).log(Level.SEVERE, null, ex);
    } catch (ClassNotFoundException ex) {
    Logger.getLogger(InsaneSPView.class.getName()).log(Level.SEVERE, null, ex);
    }
    }else{
    DefaultTableModel data = (DefaultTableModel)hosts.getModel();
    data.addColumn("1");
    data.addColumn("2");
    data.addColumn("3");
    data.addColumn("4");
    }
    ошибка при востановлений:
    java.io.EOFException
    at java.io_ObjectInputStream$BlockDataInputStream.readFully(ObjectInputStream.java:2700)
    at java.io_ObjectInputStream.defaultReadFields(ObjectInputStream.java:1936)
    at java.io_ObjectInputStream.defaultReadObject(ObjectInputStream.java:480)
    at java.awt.Component.readObject(Component.java:8425)

    что я делаю не так?
    и вообще возможно ли сериализовать весь гуй, чтоб при последующем запуске программы начать работать на том месте на котором остановился, плюс сохранение настроек к примеру)
     
  14. skagen

    skagen Member

    Joined:
    8 Jan 2010
    Messages:
    148
    Likes Received:
    13
    Reputations:
    0
    дайте любой простейший код программки,игры и т.п. на java,хочу глянуть.спасибо
     
  15. razb

    razb Active Member

    Joined:
    24 Mar 2009
    Messages:
    658
    Likes Received:
    133
    Reputations:
    18
  16. skagen

    skagen Member

    Joined:
    8 Jan 2010
    Messages:
    148
    Likes Received:
    13
    Reputations:
    0
    razb, не судьба.ничего толкового нету.чего ж ты мне дал ссылку,а код не дал,если так просто?
     
  17. Irdis

    Irdis Elder - Старейшина

    Joined:
    6 Feb 2006
    Messages:
    248
    Likes Received:
    52
    Reputations:
    3
    lol
    первая ссылка
     
  18. Ra$cal

    Ra$cal Elder - Старейшина

    Joined:
    16 Aug 2006
    Messages:
    670
    Likes Received:
    185
    Reputations:
    78
    ну значит программирование - не твое.
     
  19. Radical Edward

    Radical Edward New Member

    Joined:
    24 Jan 2010
    Messages:
    21
    Likes Received:
    0
    Reputations:
    0
    Здравствуйте, у меня небольшой вопрос :
    Как в Visual Studio 2008 включить в исполниьельный файл некоторый ресурс, который можно было бы потом, скажем, сохранить где-то на диске. Судя по всему, следовало бы создать обычный файл ресурса, загнать туда этот самый резурс и изменить в свойствах параметр (какойтотам) на "Содержимое". Так вот, пробовал такой метод - у меня не получается, у знакомого все прекрасно. Причину никто не знает? есть ли другой способ засунуть неокторый файл в .EXE - шку (з.ы : да - да, она должна быть "жирной")
     
  20. Algol

    Algol New Member

    Joined:
    29 May 2002
    Messages:
    1,759
    Likes Received:
    4
    Reputations:
    0
    Нужно присоединить файл к проекту, в свойствах файла поставить embedded resource.
    Доступ к файлу в рантайме через Assembly.GetManifestResourceStream()
     
Loading...