דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. ארכיון code613m
  4. הצעה: פורום חדש: דוגמאות קוד

הצעה: פורום חדש: דוגמאות קוד

מתוזמן נעוץ נעול הועבר ארכיון code613m
9 פוסטים 4 כותבים 586 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • clickoneC מנותק
    clickoneC מנותק
    clickone
    כתב ב נערך לאחרונה על ידי
    #1

    להנהלת הפורום: אני מציע להקים אשכול חדש שיהיה מיועד לדוגמאות קוד.
    משתמשים יוכלו לפרסם דוגמאות קוד שלהם, או מי שצריך דוגמה ספציפית יוכל לבקש אותה כאן.

    יש חשיבות שזה יהיה בנפרד מהפורום הרגיל, כי לפעמים "כשמשעמם" רוצים לעבור ולראות דוגמאות קוד....
    הדוגמה צריכה להיות קצרה ועניינית כמו כאן:

    תודה!

    פורסם במקור בפורום CODE613 ב30/12/2013 10:29 (+02:00)

    אין טסט כמו פרודקשן.

    המייל שלי urivpn@gmail.com

    תגובה 1 תגובה אחרונה
    0
    • רחמיםר מנותק
      רחמיםר מנותק
      רחמים מורחק
      כתב ב נערך לאחרונה על ידי
      #2

      יוזמה ברוכה,
      אני בעד.

      ובשביל ההתחלה הנה קוד קטן לקבלת שער יציג עדכני:

      private double BankOfIsraelExchangeRate(DateTime date, string currency = "01")
              {
                  double ExchangeRate = 0;
                  string XmlUrl =
                     "http://www.boi.org.il/currency.xml?" +
                     "rdate=" + date.ToString("yyyyMMdd") + @"&curr=" + currency;
                  DataSet dtExchangeRate = new DataSet("BankOfIsraelExchangeRate");
                  dtExchangeRate.ReadXml(XmlUrl);
                  if (dtExchangeRate.Tables.Count > 1)
                      ExchangeRate = Convert.ToDouble
                                         (dtExchangeRate.Tables[1].Rows[0]["RATE"]);
                  // No exchange rate published for this date, then loop 6 days back
                  else if (dtExchangeRate.Tables.Count > 0)
                  {
                      for (int i = 1; i <= 6; i++)
                      {
                          DateTime CheckDate = date.AddDays((-1) * i);
                          string XmlLoopUrl =
                             "http://www.boi.org.il/currency.xml?" +
                     "rdate=" + CheckDate.ToString("yyyyMMdd") + @"&curr=" + currency;
      
                          DataSet dtLoopExchangeRate =
                                     new DataSet("BankOfIsraelLoopExchangeRate");
                          dtLoopExchangeRate.ReadXml(XmlLoopUrl);
                          // Found valid published exchange rate
                          if (dtLoopExchangeRate.Tables.Count > 1)
                          {
                              ExchangeRate = Convert.ToDouble
                                      (dtLoopExchangeRate.Tables[1].Rows[0]["RATE"]);
                              break;
                          }
                      }
                  }
      
                  return ExchangeRate;
              }
      

      לקבלת קודי מטבעות נוספים עיין כאן.
      הקוד במקורו מכאן, ועשיתי לו שיפוץ קטן כדי להתאימו לזמנינו.

      פורסם במקור בפורום CODE613 ב30/12/2013 22:35 (+02:00)

      תגובה 1 תגובה אחרונה
      0
      • clickoneC מנותק
        clickoneC מנותק
        clickone
        כתב ב נערך לאחרונה על ידי
        #3

        יפה!!! בדיוק חשבתי לעצמי כשהתחלתי את הפוסט הזה שזו תהיה הדוגמה הראשונה שאני יביא....

        @רחמים

                   "rdate=" + date.Year + date.Month.ToString("00") +
                   date.Day.ToString("00") + @"&curr=" + currency;
        

        אפשר לחסוך את השירשור של השנה, החודש והיום ע"י שימוש בזה:

        date.ToString("yyyyMMdd")
        

        משתמשי VB6 וVBA יכולים להשתמש בזה:

        format(date,"yyyyMMdd")
        

        כמובן שגם משתמשי VB.NET יכולים להשתמש בזה, אבל אין סיבה לעבוד קשה על פני ToString

        פורסם במקור בפורום CODE613 ב31/12/2013 00:20 (+02:00)

        אין טסט כמו פרודקשן.

        המייל שלי urivpn@gmail.com

        תגובה 1 תגובה אחרונה
        0
        • רחמיםר מנותק
          רחמיםר מנותק
          רחמים מורחק
          כתב ב נערך לאחרונה על ידי
          #4

          תודה רבה על ההערה החשובה, תיקנתי את ההודעה שלי.

          פורסם במקור בפורום CODE613 ב31/12/2013 08:52 (+02:00)

          תגובה 1 תגובה אחרונה
          0
          • M מנותק
            M מנותק
            magicode
            כתב ב נערך לאחרונה על ידי
            #5

            למה לכתוב פעמים.

            למה לא לכתוב ככה.

            private double BankOfIsraelExchangeRate(DateTime date, string currency = "01")
                    {
                        // No exchange rate published for this date, then loop 6 days back
                            for (int i = 0; i >= -6; i--)
                            {
                                string XmlLoopUrl  =  "http://www.boi.org.il/currency.xml?" +
                                   "rdate=" + date.AddDays(i).ToString("yyyyMMdd") + @"&curr=" + currency;
                                DataSet dtLoopExchangeRate =  new DataSet("BankOfIsraelLoopExchangeRate");
                                dtLoopExchangeRate.ReadXml(XmlLoopUrl);
                                // Found valid published exchange rate
                                if (dtLoopExchangeRate.Tables.Count > 1)
                                {
                                    return Convert.ToDouble(dtLoopExchangeRate.Tables[1].Rows[0]["RATE"]);
                                }
                            }
                        return 0;
                    }
            

            פורסם במקור בפורום CODE613 ב31/12/2013 09:30 (+02:00)

            תגובה 1 תגובה אחרונה
            0
            • רחמיםר מנותק
              רחמיםר מנותק
              רחמים מורחק
              כתב ב נערך לאחרונה על ידי
              #6

              תודה רבה!
              magicode כשמו כן הוא 🙂

              פורסם במקור בפורום CODE613 ב31/12/2013 11:08 (+02:00)

              תגובה 1 תגובה אחרונה
              0
              • M מנותק
                M מנותק
                magicode
                כתב ב נערך לאחרונה על ידי
                #7

                סתם הערות קטנוניות על הקטע הזה למעלה.

                ((-1) * i)
                
                • למה לעשות כפול שאפשר לעשות 0 פחות i או יותר קצר -i .
                • בכלל לא צריך סוגריים על -1 זה סתם מבלבל בעניים.

                פורסם במקור בפורום CODE613 ב31/12/2013 13:19 (+02:00)

                תגובה 1 תגובה אחרונה
                0
                • רחמיםר מנותק
                  רחמיםר מנותק
                  רחמים מורחק
                  כתב ב נערך לאחרונה על ידי
                  #8

                  אתה שוב צודק, אלא שהקוד הזה כמו שכבר ציינתי בהודעה למעלה הוא לא שלי אלא בא מהקישור בסוף ההודעה.
                  אולי הקוד הועתק מרפלקטור או מאיזה מתרגם שפות שדרכם לעשות דברים כאלו.

                  פורסם במקור בפורום CODE613 ב31/12/2013 14:47 (+02:00)

                  תגובה 1 תגובה אחרונה
                  0
                  • K מנותק
                    K מנותק
                    kingyes
                    כתב ב נערך לאחרונה על ידי
                    #9

                    סתם טיפ: אם יש לכם קודים כל כך מעניינים, מומלץ לפרסמם כ-Gist ב-Github. זה יותר נוח לקריאה וגם אכסון.

                    פורסם במקור בפורום CODE613 ב31/12/2013 23:52 (+02:00)

                    תגובה 1 תגובה אחרונה
                    0

                    בא תתחבר לדף היומי!
                    • התחברות

                    • אין לך חשבון עדיין? הרשמה

                    • התחברו או הירשמו כדי לחפש.
                    • פוסט ראשון
                      פוסט אחרון
                    0
                    • דף הבית
                    • קטגוריות
                    • פוסטים אחרונים
                    • משתמשים
                    • חיפוש
                    • חוקי הפורום