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

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

  1. CheatXX

    CheatXX New Member

    Joined:
    8 Jun 2009
    Messages:
    154
    Likes Received:
    2
    Reputations:
    0
    C#.

    Подскажите как запустить приложение с параметрами? т.е из моего приложения нужно запустить сторонние
     
  2. patcher

    patcher Banned

    Joined:
    15 Dec 2009
    Messages:
    190
    Likes Received:
    37
    Reputations:
    10
    Code:
    private void button1_Click(object sender, EventArgs e)
    {
        System.Diagnostics.Process p = new System.Diagnostics.Process();
        p.StartInfo.FileName = "имя_приложения";
        p.StartInfo.Arguments = "параметры";
        p.Start();
    }
    
     
  3. phpdreamer

    phpdreamer Member

    Joined:
    26 Jul 2009
    Messages:
    522
    Likes Received:
    86
    Reputations:
    19
    не сворачивается окно

    Java, NetBeans

    Логика в проге:
    Открывается 2 окна: главное и action. При запуске с некоторым параметром в командной строке, главное окно должно сворачиваться на панель задач.

    Но проблема в том, что главное окно не хочет сворачиваться.

    Главное окно наследует FrameView, у которого есть метод getFrame(), возвращающий JFrame.

    Код работающий с главным фреймом в конструкторе класса ПроектView,
    например такой:
    Code:
    getFrame().setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    дает результат,
    а то что нужно для сворачивания:
    Code:
    getFrame().setExtendedState(JFrame.ICONIFIED);
    не дает никакого результата, как и вариации на тему:
    Code:
    getFrame().setState(JFrame.ICONIFIED);
    ПроектApp.getApplication().getMainFrame().setVisible(false);
    ПроектApp.getApplication().getMainFrame().setState(JFrame.ICONIFIED);
    
    (вместо "Проект" подразумевается название проекта)

    //уже решил сам
     
    #1383 phpdreamer, 30 Jul 2012
    Last edited: 4 Aug 2012
  4. Radzhab

    Radzhab New Member

    Joined:
    12 Sep 2011
    Messages:
    9
    Likes Received:
    0
    Reputations:
    0
    Помогите авторизоваться на сайте
    Code:
    private void button1_Click(object sender, EventArgs e) 
            { 
                var s = Autorization("http://www.paradiz.net/login.php?do=login", 
                                     "vb_login_username=Radzhab&vb_login_password=&s=&securitytoken=guest&do=login&vb_login_md5password=e10adc3949ba59abbe56e057f20f883e&vb_login_md5password_utf=e10adc3949ba59abbe56e057f20f883e"); 
    
            } 
    
    
    public CookieContainer Autorization(string url, string postdata) 
            { 
                CookieContainer cookies = new CookieContainer(); 
    
                var cookieContainer = new CookieContainer(); 
                //var requestData = Encoding.UTF8.GetBytes(postdata); 
    
                var requestData = Encoding.ASCII.GetBytes(postdata); 
                var request = (HttpWebRequest)WebRequest.Create(url); 
                //Таймаут задержки ответа от сервера 
                request.Timeout = 40000; 
                //Максимум повторніх отправок запроса 
    
                request.CookieContainer = new CookieContainer(); 
    
                if (Cooks != null) 
                { 
                    request.CookieContainer.Add(Cooks); 
                } 
    
                request.Credentials = CredentialCache.DefaultCredentials; 
                request.AllowAutoRedirect = true; 
                request.KeepAlive = true; 
                request.ServicePoint.Expect100Continue = false; 
                request.Method = "POST"; 
                request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"; 
                request.ContentType = "application/x-www-form-urlencoded"; 
                request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0;" + 
                                    " Windows NT 5.1; SV1; .NET CLR 2.0.50727)"; 
                request.ContentLength = requestData.Length; 
                using (var s = request.GetRequestStream()) 
                { 
                    s.Write(requestData, 0, requestData.Length); 
    
                } 
    
    
                using (var respons = (HttpWebResponse)request.GetResponse()) 
                { 
                    respons.Cookies = request.CookieContainer.GetCookies(request.RequestUri); 
                    cookies=request.CookieContainer; 
                    return cookies; 
                    //MessageBox.Show(respons.StatusCode.ToString()); 
                    // File.AppendAllText(Directory.GetCurrentDirectory() + "/status.txt", login + ":" + password + respons.StatusCode + "\n"); 
                    //using (var reader = new StreamReader(respons.GetResponseStream(), Encoding.GetEncoding(1251))));) 
                    using (var reader = new StreamReader(respons.GetResponseStream())) 
                    { 
    
                        var rezultpost = reader.ReadToEnd(); 
                    } 
                } 
    
    
                request.Abort(); 
    
    
    
    
            }  
     
  5. bagon66

    bagon66 Banned

    Joined:
    28 Jun 2011
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    [​IMG]
    Вот код сам.
    Я хочу сделать так, чтобы в консоле человек мог вводить любой текст кроме "Один" и "два" если он вводит "один" либо "два" то пишет ему ошибку.

    Мне пишет ошибку "Неявное преобразование типа "string[]" в "string" невозможно"
     
  6. Spot

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

    Joined:
    1 Mar 2007
    Messages:
    462
    Likes Received:
    38
    Reputations:
    1
    Если всего два условия, то не стоит усложнять.

    Code:
    if(user ="Один"||user = "Два")
    {
    //код
    }
    
    Если перечень больше, то для начала почитай о string[] или List<string>, куча доков в сети.
     
    #1386 Spot, 12 Aug 2012
    Last edited: 12 Aug 2012
  7. Ins3t

    Ins3t Харьковчанин

    Joined:
    18 Jul 2009
    Messages:
    942
    Likes Received:
    428
    Reputations:
    139
    Code:
    for(int i = 0; i < array.Length; ++i)
    {
         if(user == array[i]) // or System.String.Contains(array[i])
         {
              Console.Writelen("Error.");
              break;
         }
    }
    так же рекомендую при проверке преобразовывать все к нижнему регистру.

    Code:
    for(int i = 0; i < array.Length; ++i)
    {
         if(user == array[i].toLower())
         {
              Console.Writelen("Error.");
              break;
         }
    }
    это все для нескольких вариантов ненужных ответов.
     
  8. cipa21

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

    Joined:
    9 Apr 2009
    Messages:
    548
    Likes Received:
    146
    Reputations:
    30
    Code:
    private TreeNode scan(DirectoryInfo dir, TreeNode tn)
            {
                try
                {
                    foreach (DirectoryInfo dd in dir.GetDirectories())
                    {
                        TreeNode t = new TreeNode(dd.Name);
                        tn.Nodes.Add(scan(dd, t));
                    }
                }
                catch (UnauthorizedAccessException)
                {
                }
                catch(Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
    
                return tn;
    
    private void button1_Click(object sender, EventArgs e)
            {
                   TreeNode t = new TreeNode("\\");
                    DirectoryInfo dinfo = new DirectoryInfo("d:/test/");
                    t = scan(dinfo, t);
    }
            }
    Сразу оговорюсь, scan скомуниздил с гугла.
    Что я делаю не так? в treeView1 ничего кроме "--//" не отображается.

    PS. простите, туплю. Проблема решена treeView1.Nodes.Add(scan(dinfo, t));
     
    #1388 cipa21, 15 Aug 2012
    Last edited: 15 Aug 2012
  9. vicgerrard

    vicgerrard New Member

    Joined:
    4 Apr 2010
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Потому что Console.ReadLine() возвращает значение типа string, в то время как массив является string[]
    Сравнение string и string[] не предоставляется возможным.
    Так же при сравнивании надо использовать оператор "==", вместо "=".
    Правильный вариант будет выглядеть как-то так:

    Code:
    string[] mas = new string[2]{"one","two"};
    if (mas.Contains(Console.ReadLine())) 
    {
     Console.WriteLine("error");
     return; 
    }
     
  10. xad_jek

    xad_jek New Member

    Joined:
    17 Jul 2012
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Подскажите как можно реализовать проверку мыла на валидность? Т.е. либо на существование такого логина либо проверку пароля организовать?
     
  11. DeepBlue7

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

    Joined:
    2 Jan 2009
    Messages:
    359
    Likes Received:
    50
    Reputations:
    12
    Не проще ли проверочное сообщение кидать с предварительно сгенерированным кодом, который потом необходимо вбить в форму ?



    ========================================

    Java, Eclipse, Android ADT Plugin.

    Это мне одному кажется еба**** тот факт что нужен "" (пустой стринг??) (типа "" + n) для того чтоб-бы установить значение поля ?

    Code:
      final Button b1 = (Button) findViewById(R.id.button1);
            final EditText t1 = (EditText) findViewById(R.id.editText2);
            b1.setOnClickListener(new View.OnClickListener() {
    			
    			public void onClick(View v) {
    				// TODO Auto-generated method stub
    				n++;
    				t1.setText("" + n);
    			}
    		});
    
    Работает... а если
    Code:
     t1.setText(n);
    - крешает. Можете пояснить, почему это так ? Я так понимаю, т.к. использование перегруженного оператора + конвертит int в стринг ? Но почему тогда нельзя делать тупо n.toString() ? Заранее благодарю.
     
    #1391 DeepBlue7, 30 Aug 2012
    Last edited: 30 Aug 2012
  12. Spot

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

    Joined:
    1 Mar 2007
    Messages:
    462
    Likes Received:
    38
    Reputations:
    1
    Почему нельзя? t1.setText(n.ToString()); не идёт?
     
  13. return

    return New Member

    Joined:
    23 Oct 2010
    Messages:
    125
    Likes Received:
    3
    Reputations:
    1
    DeepBlue7 потому что ("" + n) - происходит неявное переопределения (или как оно там называется) из int в string.
     
  14. fidel-pro

    fidel-pro New Member

    Joined:
    1 Sep 2012
    Messages:
    1
    Likes Received:
    0
    Reputations:
    -1
    Всем Привет, помогите разобраться
    Code:
    var doc = VkRequest.Request("http://m.yandex.ru").GetHtmlDocument();  // Получаем посты со стены   var postNodes = doc.GetElementsByClassName("p");   List<string> posts = new List<string>();   foreach (var item in postNodes)     {   posts.Add(item.InnerText);   }
    парсю страницу, как в движке VikingEngeni исключить не которые символы, слова, словочетания
    к примеру идет строка "02&nbsp;сентября 2012&nbsp;года" нужно исключить &nbsp;

    Спасибо!
     
    #1394 fidel-pro, 2 Sep 2012
    Last edited: 2 Sep 2012
  15. Spot

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

    Joined:
    1 Mar 2007
    Messages:
    462
    Likes Received:
    38
    Reputations:
    1
    ТЫЦь

    Code:
     string correctString = errString.Replace("&nbsp;", "");
     
  16. CheatXX

    CheatXX New Member

    Joined:
    8 Jun 2009
    Messages:
    154
    Likes Received:
    2
    Reputations:
    0
    может кто-нибудь подсказать, как добавить в xml новый элемент?


    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <list>
    	<item id="1">
              .....
              *тут другие элементы*
              .....
              *а сюда нужно добавить*
              <newElement paramentr="1">
                        <newElem2 paramentr="1">
                                  <newelem3 parement="1" paramentr2="2" /> (несколько может быть)
                         </newElem2>
              </newElement>
            </item>
    </list>
    C#, зарание спасибо
     
    #1396 CheatXX, 2 Sep 2012
    Last edited: 2 Sep 2012
  17. justonline

    justonline network ninja

    Joined:
    27 Jul 2011
    Messages:
    532
    Likes Received:
    61
    Reputations:
    53
    кто-нибудь может помочь мне с написанием апплета редиректа? не за просто так. в фриланс раздел никто не смотрит из джава кодеров
     
  18. cipa21

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

    Joined:
    9 Apr 2009
    Messages:
    548
    Likes Received:
    146
    Reputations:
    30
    Может кто сталкивался, как закрыть программно MessageBox.Show, например, по истечении 2 секунд?
     
  19. seosimf

    seosimf Member

    Joined:
    3 Mar 2011
    Messages:
    271
    Likes Received:
    44
    Reputations:
    6
    Находить его handle а затем посылать ему соответствующее сообщения на закрытия. Вот пример.
     
  20. tmp

    tmp Banned

    Joined:
    10 Mar 2005
    Messages:
    420
    Likes Received:
    32
    Reputations:
    1
    В Яве полный ноль, собираю апплет по кусочкам. Почти уже все готово, но вот осталась не решенной одна задача - принять апплетом нужный параметр.
    Как я понял, это делается с помощью getParameter, но получается не большая (а вернее очень большая, уже стуки над ней бьюсь) нестыковка. Для этой функции необходимо передать классу extends Applet, но у меня в этом классе (где нужно принять внешние параметры) уже используется (и менять нельзя) implements PrivilegedExceptionAction.
    В самом апплете 3 файл-класса. Этот класс - третий. В первом классе (файле) как раз стоит extends Applet, то есть здесь я могу принять параметры, но как их принять в третьем классе (файле)? Создал вложенный класс в третьем классе, где принимаю параметры, но в таком случае при компиляции создалось 2 файла, я так понял вложенный класс вынесся в отдельный файл. вот такая вот ситуация в общих чертах и вот такая задача.. подскажите плиз - как можно ее решить? Или пример какой рабочий?

    UPD
    Перефразирую:

    Как передать значение переменной из одного класса в другой? Смотрел в инете, из немногочисленных примеров ни один не работает.

    К примеру есть класс A и класс B
    Оба лежат в отдельном файле соответственно A.class , B.class в одном jar

    в первом файле A.class

    Code:
    public class A extends Applet 
    {
    static public String myUrl;
    public void init()  
         {     
    		myUrl = getParameter("url");
    }
    
    }
    B.class

    Code:
    public class B implements PrivilegedExceptionAction 
    {
    String myUri;
    public static void main(String[] args)
    {
    A my = new A();
    String myUri = my.myUrl;
    }
    }
    
    При таком раскладе получаю в B.class myUri = null, а нужно чтоб было то значение которое определено в A.class
     
    #1400 tmp, 18 Sep 2012
    Last edited: 19 Sep 2012
Loading...