任务单 #48141

株価更新の処理が失敗してしまう

开放日期: 2023-06-02 16:53 最后更新: 2023-06-05 22:11

报告人:
(匿名)
属主:
类型:
状态:
关闭
组件:
(无)
里程碑:
(无)
优先:
5 - Medium
严重性:
5 - Medium
处理结果:
Fixed
文件:

Details

いつも管理していただきありがとうございます。
以下に詳細内容を記載しました。

■現象
株価更新をしようとすると、処理途中で例外エラーが発生してしまう。

■原因とエラー箇所
銘柄情報(index.txt)のダウンロード処理は正常に完了します。
続いて、その再読み込み処理内( BrandData.cs/Load() )で、株数(文字列)をintに変換する際に、空文字をintにキャストしようとして例外エラーが出るみたいです。

http://protra.sourceforge.jp/data/index.txt.lzh」

のテキスト内容

date=20230601
0,,, ★←ここです。
1301,極洋,TP,100,S:20160928:0.1
1305,iFreeETF TOPIX(年1回決算型),T,10

~(省略)~


(※ソースコードタブのリポジトリは、見えませんでしたのでリンク無し)
Protra.Lib.Data.BrandData.cs

  1. public void Load()
  2. {
  3. ~(省略)~
  4. reader.ReadLine(); // @dateを読み飛ばす。
  5. string line;
  6. while ((line = reader.ReadLine()) != null)
  7. {
  8. var entries = line.Split(',');
  9. var brand = new Brand
  10. {
  11. Code = entries[0],
  12. Name = entries[1].Replace("ホールディングス", "HD"),
  13. Market = entries[2],
  14. Unit = int.Parse(entries[3]) ★←ここです。
  15. };
  16. ~(省略)~



■対応A
ユーザー側で毎回 index.txt を手動修正する。
一回目の株価更新処理を行った後で、銘柄コード0の1行を削除して上書き保存します。
再度、株価更新処理を行うことで、各銘柄の株価データの更新から始まるのでうまくいきます。

■対応B
不正な銘柄情報の場合は無視するように、ソースコード修正をおこないます。

Protra.Lib.Data.BrandData.cs

  1. public void Load()
  2. {
  3. ~(省略)~
  4. var entries = line.Split(',');
  5. if (entries.Any(x => string.IsNullOrWhiteSpace(x))) ★←ここです。if 文で entries[3] が空だったら無視とかでもいいと思いました。
  6. continue;
  7. var brand = new Brand
  8. {
  9. Code = entries[0],
  10. Name = entries[1].Replace("ホールディングス", "HD"),
  11. Market = entries[2],
  12. Unit = int.Parse(entries[3])
  13. };
  14. ~(省略)~



以上、お知らせでした。
もしも、私の環境だけで出る現象でしたらすみません。

任务单历史 (3/4 Histories)

2023-06-02 16:53 Updated by: None
  • New Ticket "株価更新の処理が失敗してしまう" created
2023-06-02 22:19 Updated by: panacoran
评论

連絡ありがとうございます。

index.txtの生成ミスでゴミが入っていたので直しました。

2023-06-05 19:12 Updated by: None
评论

更新処理が無事に完了しましたし、
index.txt の不正データも含まれていないことを確認できました。
ご対応ありがとうございました!

2023-06-05 22:11 Updated by: panacoran
  • 状态 Update from 开启 to 关闭
  • 属主 Update from (无) to panacoran
  • 处理结果 Update from to Fixed

Attachment File List

No attachments

编辑

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » 登录名